Получить позицию курсора в Android в тексте редактирования?

Я использую пользовательское представление EditText. Я переопределил событие OnKeyUp и могу захватить клавишу Enter. Теперь мое требование, когда пользователь ввел текст " Привет. Как поживаешь?"а затем сохраняет курсор после слова "есть" и нажмите enter, мне нужно получить местоположение курсора, чтобы я мог извлечь текст после курсора в момент нажатия клавиши Enter. Пожалуйста, дайте мне знать, как это делать. Спасибо за ваше время и помощь.

1 ответов


вы можете получить позицию курсора с помощью методов getSelectionStart() и getSelectionEnd (). Если текст не выделен, getSelectionStart () и getSelectionEnd () возвращают положение курсора. Так что что-то вроде этого должно сделать трюк:

myEditText.getSelectionStart();

или

myEditText.getSelectionEnd();

затем, если вы хотите выбрать весь текст после курсора, вы можете использовать это:

int cursorPosition = myEditText.getSelectionStart();
CharSequence enteredText = myEditText.getText().toString();
CharSequence cursorToEnd = enteredText.subSequence(cursorPosition, enteredText.length());