Android - Is there a way to move the caret in a text box without using the hard keyboard and without a bunch of single touches?

This depends on the phone you're using, on my Spica, for example, I can use the directional keypad to adjust the position of the cursor. On phones that have trackballs, the trackball does the same job.

Otherwise, the backspace key can be used as a workaround for left-arrow key (delete a few chars, then retype the word you're inserting and retype the deleted chars.

Another alternative, if you're typing in English or in one of the supported languages, you can try Swype. Swype is a word-based text input (as opposed to character based), and you typically delete or swipe one word at a time and the correction mode (double tap on the word you want to correct and pick or swipe the new word) make correcting errors a breeze.


In Froyo and later, there is a "cursor handle" that you can grab and drag to the right location.

cursor handle

Now this photo doesnt show it, but the actual cursor is still there blinking too. that handle will also bring up a quick action menu to select text or paste. and once text is selected, you can copy and cut too.


Providing this as an answer for those who don't want to install a custom ROM and want something close to the stock soft keyboard.

I installed Anysoft Keyboard (found it on this question). The android market doesn't have the current screenshots, but here's one that shows the small left/right arrows at the top of the keyboard: enter image description here