Возможно, вам понадобится редактируемая текстовая область, чтобы сфокусироваться. Возможно, у вас может быть один невидимый или прозрачный фон без курсора. Возможно, вам придется поиграть с настройками фокусировки для вида.
Используйте TextWatcher для проверки изменений в этом EditText с помощью addTextChangedListener , или, если вам нужен хук еще более низкого уровня, установите прослушиватель ключа textview с помощью метода setOnKeyListener (). См. Документацию KeyListener .
Используйте этот вызов для принудительного открытия программной клавиатуры:
((InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE))
.showSoftInput(myEditText, InputMethodManager.SHOW_FORCED);
и этот, чтобы закрыть его:
((InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE))
.hideSoftInputFromWindow(myEditText.getWindowToken(), 0);
обратите внимание, что это на самом деле не рекомендуется - принудительное открывание клавиатуры немного грязно. Каков ваш вариант использования, который действительно требует ввода пользовательского ввода без обычного поля редактирования и требует, чтобы пользователь вводил данные по каждому ключу, не возвращая его назад?