2011-06-29 4 views
3

Мне нужно получить целую текстовую строку перед курсором в моем классе InputMethod. getTextBeforeCursor() получает только «n» символов, но я не знаю длины текста.Получить текст перед курсором

+0

Отъезд [это] (http://stackoverflow.com/questions/7440269/better-way-to-get-all-the-text-in-an-edittext-from-an-inputconnection) вопрос/ответ , Я рекомендую 'CharSequence currentText = inputConnection.getExtractedText (новое решение ExtractedTextRequest(), 0) .text;', которое дает вам длину текста. – CrazyIvan1974

ответ

1

См. Это documentation. Кажется, что вы можете сделать это:

getCurrentInputConnection().getTextBeforeCursor(100, 0); 

или какой-либо другой большое количество, так как он принимает только текст от входа - не все «N» символов.

0

Как было сказано выше, вы можете использовать getTextBeforeCursor() с большим количеством. Если он возвращает строку с одинаковой длиной, вы можете попробовать получить больше. Но будьте осторожны, некоторые приложения, такие как приложение электронной почты от Samsung, возвращают всю длину строки! Даже если вы наберете 1 символ.

Смежные вопросы