Следующий код работает только для 1000 символов.Если имеется более 1000 символов, курсор вернется к концу 999 символов и снова начнет работать.
Это связано с тем, что getTextBeforeCursor(n,flag)
может предложить только число n
символов перед текущим курсором.позиция.Однако в EditText мы можем получить весь текст, используя метод getText()
, и мы также можем получить длину.Но как получить длину всего текста в области текста для составления текста, чтобы я мог установить положение курсора в любом месте.
InputConnection ic = getCurrentInputConnection();
ic = getCurrentInputConnection();
String str = ic.getTextBeforeCursor(1000,0).toString();
ic.setSelection(str.length()-1,str.length()-1);