видимая клавиатура для Android - PullRequest
1 голос
/ 19 августа 2010

Моя функция, запускаемая из onResume (), не вызывает появление клавиатуры.

Я делаю это неправильно?

private void showKeyboard() {
InputMethodManager mgr = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
mgr.showSoftInput(txtSearch, InputMethodManager.SHOW_FORCED);
txtSearch.requestFocus();}

Ответы [ 2 ]

0 голосов
/ 11 июля 2011

GetWindow () setSoftInputMode (WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE). может помочь вам. Обратите внимание, что есть устройства Android с аппаратными клавиатурами. например. У устройств GoogleTV часто нет сенсорного экрана, но есть аппаратная клавиатура. Некоторые даже эмулируют сенсорный экран.

Это актуально, если вы разрабатываете в эмуляторе:

http://plainoldstan.blogspot.com/2010/09/android-set-focus-and-show-soft.html

"Во время экспериментов я не получал то, что хотел, пока не понял, что у меня должно быть устройство эмулятора без аппаратной клавиатуры:"

0 голосов
/ 19 августа 2010

Программная клавиатура иногда бывает хитрой. Я верю, что последняя строка, txtSearch.requestFocus() не нужна, и на самом деле может все испортить. Говоря клавиатуре SHOW_FORCED на txtSearch, вы уже говорите, что она имеет фокус.

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