2010-11-24 6 views
6

Я хотел бы подключиться к событию, которое срабатывает при появлении экранной клавиатуры Android. Например, когда пользователь нажимает EditText, чтобы вызвать клавиатуру. Кто-нибудь знает, какое событие (или слушатель) использовать?Android: какое событие срабатывает при появлении экранной клавиатуры?

Timo

+0

Документация для Android относится к методу onEvaluateInputViewShown() InputMethodService, который может делать то, что я хотел, но я, похоже, не могу ухватить его экземпляр. Я попытался с помощью InputMethodManager imm = (InputMethodManager) getSystemService (INPUT_METHOD_SERVICE); но этот экземпляр не помогает мне добраться до InputMethodService. – Pompair 2010-11-24 16:59:09

ответ

0

Там не будет способ, чтобы определить, когда клавиатура идет вверх, но если вы хотите, чтобы проверить, когда пользователь нажимает на EditText вы можете зарегистрировать щелчок слушателя или onfocuschangedlistener к этой точке зрения.

+1

Привет, спасибо за ответ. Однако я отказываюсь признать это окончательной правдой. =) – Pompair 2010-11-24 16:58:42

1

Согласно следующей теме обсуждения в Android Developers Google Group единственным способом решить эту проблему является прослушивание измененных событий основного вида. Тем не менее, поток довольно старый. Интересно, улучшил ли какой-либо из новых API-интерфейсов лучший способ.

http://groups.google.com/group/android-developers/browse_thread/thread/9d1681a01f05e782

Последнее сообщение объясняет логику рабочего раствора.

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