将光标移动到EditText的末尾?

时间:2011-10-28 21:11:51

标签: android

我正在替换EditText中的一些文本,然后我想将光标移动到当前文本输入的末尾。这似乎有点 - 当我再次开始输入时,光标似乎在EditText的末尾,但它不再闪烁/闪烁。我必须再次触摸EditText,光标再次开始闪烁。我做错了吗?:

editText.setSelection(editText.getText().length()-1);

由于

3 个答案:

答案 0 :(得分:44)

我使用的一个技巧是将文本设置为“”,然后附加我想要的整个字符串。

String newtext = editText.getText().toString() + "the new text";
editText.setText("");
editText.append(newtext);

这似乎把光标放在了正确的位置。

答案 1 :(得分:18)

EditText et = (EditText)findViewById(R.id.inbox);
et.setSelection(et.getText().length());

第二种方法

有一个名为append for ediitext的函数,它将字符串值附加到当前的edittext值,并将光标放在值的末尾。您可以将字符串值作为当前的ediitext值,并调用append();

myedittext.append("current_this_edittext_string"); 

答案 2 :(得分:0)

  

允许用户更改“编辑文字”中的整个文字(使用户更友好)

editText.selectAll(); //user can delete the whole text at one go
editText.requestFocus();
相关问题