У меня есть android.support.v7.widget.SearchView, живущий на моей панели инструментов AppCompat.Кнопка «Назад» не сбрасывается SearchView
Я нажимаю кнопку «Поиск», чтобы развернуть ActionView MenuItem, и все нормально, пока я не ударил аппаратную кнопку «Назад» устройства. Это скрывает клавиатуру, и EditText SearchView теряет фокус, и его курсор исчезает, но элемент не сбрасывается обратно на значок поиска. Вместо этого элемент меню справа от значка поиска фокусируется/подсвечивается, что ... неправильно. Повторное нажатие не делает этого.
Я попытался обнаружить обратный ключ различными способами, например, добавить OnKeyListener в SearchView или его EditText, но он не запускается. Нажатие кнопки «Вверх» на панели действий делает именно то, что мне нужно, поэтому мне просто нужно обнаружить кнопку «Назад».
Единственное, что странно в моей настройке, - это то, что SearchView сам не находится в макете. Если я его добавлю, он будет успешно сгенерирован, но сбой в Runtime. По какой-то причине.
У меня есть слушатель для разворота/сглаживания, сбой обнаруживается только при нажатии кнопки «Вверх», при нажатии кнопки «Назад» он не запускается.
Благодаря
Вот восседает мой код вверх SearchView:
MenuItemCompat.setShowAsAction(menuItem, MenuItem.SHOW_AS_ACTION_ALWAYS | MenuItem.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW);
final SearchView searchView = new MyobSearchView(activity);
MenuItemCompat.setActionView(menuItem, searchView);
MenuItemCompat.setOnActionExpandListener(menuItem, new FocusSearchFieldActionExpandListener(searchView, androidUtils));
В своей деятельности предположительно? –
Да. В деятельности. –
Функция OnBackPressed не вызывается при расширении SearchView. Поэтому я не верю, что это ответ –