Как закрыть клавиатуру при нажатии кнопки «Назад» в веб-просмотре? - PullRequest
0 голосов
/ 06 ноября 2018

После нажатия на поле ввода в Android WebView появляется клавиатура. Когда я нажимаю кнопку «Назад», клавиатура закрывается. Если клавиатура закрыта и нажата кнопка «назад», мне нужно перейти на предыдущую страницу. Например, Chrome ведет себя так:

Я не нашел надежного способа определить, открыта ли клавиатура или нет. Может, я иду не в ту сторону и могу обойтись без определения открытости клавиатуры вручную?

1 Ответ

0 голосов
/ 06 ноября 2018

Переопределить метод onKeyDown в вашей активности веб-просмотра

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if ((keyCode == KeyEvent.KEYCODE_BACK)){
        hideSoftKeyboard();
    }
}

Используйте это, чтобы скрыть программную клавиатуру

InputMethodManager inputMethodManager = (InputMethodManager) activity.getSystemService(Activity.INPUT_METHOD_SERVICE);
inputMethodManager.hideSoftInputFromWindow(activity.getCurrentFocus().getWindowToken(), 0);
...