【Android】EditText的光标-在光标处插入字符串-插入字符串后无法正确移动光标

在光标处插入字符串的方法如下:

EditText mTextInput=(EditText)findViewById(R.id.input);//EditText对象



int index = mTextInput.getSelectionStart();//获取光标所在位置



String text="I want to input str";



Editable edit = mTextInput.getEditableText();//获取EditText的文字



if (index < 0 || index >= edit.length() ){



       edit.append(text);



}else{



      edit.insert(index,text);//光标所在位置插入文字



}

如果想在插入字符串后将光标移动到插入字符串的后面,则:

edit.setSelection(index + text.length());

不知道为什么,我今天做的时候总是无法将光标移动到正确的位置,后来如下方法解决,但是很不科学的样子:

edit.setSelection(index);

edit.setSelection(index + text.length());

不知道谁有好的解决办法。求指导。

你可能感兴趣的:(EditText)