Что нужно передать редактору из приложения клавиатуры, чтобы переместить курсор на один символ влево? - PullRequest
0 голосов
/ 18 сентября 2010

Какой код клавиши ожидает приложение-редактор Android, чтобы приложение клавиатуры отправляло, когда оно будет интерпретироваться как стрелка влево?Другими словами, что программа клавиатуры должна посылать вызывающей программе (своего рода редактору), если пользователь намерен переместить курсор на один символ влево?Смежный вопрос: что означают минус-значения для атрибута "android: codes"?() Любые указатели на эти вопросы будут оценены.

1 Ответ

0 голосов
/ 07 января 2011

Я знаю, что прошло много времени с тех пор, как вы спрашивали об этом, но я подумал, что я добавлю свои два цента.В вашей ситуации я бы попробовал:

InputConnection ic = getCurrentInputConnection();
String textAbove = ic.getTextBeforeCursor(0x100000, 0).toString();
int cursorPos = textAbove.length();
if (cursorPos>0) ic.setSelection(cursorPos-1, cursorPos-1);

Это должно довольно неплохо имитировать левую стрелку.

...