Показать экранную клавиатуру при активации панели действий поиска с помощью SearchView

Я вижу этот вопрос устанавливает фокус на EditText SearchView, когда я активирую поиск из панели действий. Однако клавиатура не появляется, когда она получает фокус. Не должно ли это быть, поскольку это обычный EditText? (Это обычный EditText?) Такое поведение наблюдается на Android SDK уровня 11. (Samsung Galax Tab 7.7 со стандартным Android.)

На данный момент у меня есть обходной путь, который подключается к onOptionsItemSelected(элемент MenuItem ) метод моей активности, показывающий клавиатуру.

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        boolean menuSelectionHandeled = super.onOptionsItemSelected(item);
        // menu_search is the id of the menu item in the ActionBar
        if (item.getItemId() == R.id.menu_search) {
               mInputManager.showSoftInput(null, InputMethodManager.SHOW_IMPLICIT);
        }
        return menuSelectionHandeled;
    }

Где mInputManagerявляется экземпляром InputMethodManager.

Панель ActionBar построена с помощью ActionBarSherlock, и, поскольку целевое устройство — Android 3.x, может ли это быть причиной симптомов? Согласно ActionBarSherlock FAQ:

Панель действий на Android 3.x (также известная как Honeycomb) не реализовать все функции Android 4.x (Ice Cream сэндвич). Чтобы предоставить полный API панели действий на всех платформах а также унифицировать стиль для всех версий Android. используется реализация.

8
задан Community 23 May 2017 в 12:25
поделиться