Как определить, когда программная клавиатура Android скрыта? - PullRequest
4 голосов
/ 14 июля 2009

Мне нужно определить, когда скрыта клавиатура программного обеспечения для Android. Моя активность в настоящее время реагирует на то, что аппаратная клавиатура скрыта, но программная клавиатура выглядит так, будто ее можно понять только через событие изменения размера.

Кто-нибудь знает, каким образом представление или действие может получать уведомление, когда программная клавиатура скрыта пользователем, выходящим из режима клавиатуры?

Ответы [ 3 ]

2 голосов
/ 14 июля 2009

Поможет ли принудительное отображение мягкой клавиши всегда быть видимым?

Вы можете добавить это в xml-файл своей Деятельности, чтобы программная клавиша всегда была видна в этой Деятельности:

android:windowSoftInputMode="stateAlwaysVisible"

http://developer.android.com/guide/topics/manifest/activity-element.html#wsoft

1 голос
/ 18 сентября 2012

Нет реального способа проверить, но вы можете проверить, работает ли действие с ним или нет

boolean isClosing = false;
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
isClosing = imm.hideSoftInputFromWindow(tabHost.getApplicationWindowToken(), 0);

Это вернет false, если клавиатура была закрыта, и true, если она была открыта и сейчас закрывается.

0 голосов
/ 14 июля 2009

Я решил это, просто ища клавишу возврата. Когда получена клавиша возврата, я знаю, что программная клавиатура будет отменена.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...