在光标处插入字符串的方法如下:
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());
不知道谁有好的解决办法。求指导。