Android EditText如何获取光标位置,并且在光标位置插入或删除字符呢?方法很简单,先来学习下如何获取EditText光标所在的位置,代码如下:
int index = username.getSelectionStart();
在EditText光标处插入字符,代码如下:
int index = editText.getSelectionStart(); Editable editable = editText.getText(); editable.insert(index, str);
在EditText光标处删除字符,代码如下:
int index = editText.getSelectionStart(); Editable editable = editText.getText(); //判断是否还有至少一个字符数据 if(index > 0){ editable.delete(index-1, index); }
删除EditText光标所在字符时要特别注意,如果角标为0了,再执行删除动作时,就会出现异常,导致崩溃,因此要判断是否还有字符,才能再执行删除步骤。