我正在使用自定义EditText视图。我已经覆盖了OnKeyUp事件,并且能够捕获Enter键。现在,我的要求是,当用户输入文本“嗨,你好吗?”时,然后将光标放在单词“ are”之后并按Enter,我需要获取光标位置,以便在按Enter键的那一刻可以提取光标之后的文本。请让我知道该怎么做。感谢您的时间和帮助。
Answers:
您可以使用getSelectionStart()和getSelectionEnd()方法获取光标位置。如果没有突出显示任何文本,则getSelectionStart()和getSelectionEnd()都将返回光标的位置。所以这样的事情应该可以解决问题:
myEditText.getSelectionStart();
要么
myEditText.getSelectionEnd();
然后,如果要选择光标之后的所有文本,则可以使用以下命令:
int cursorPosition = myEditText.getSelectionStart();
CharSequence enteredText = myEditText.getText().toString();
CharSequence cursorToEnd = enteredText.subSequence(cursorPosition, enteredText.length());