У меня есть приложение для видеоплеера, в котором вы можете искать видео. Мой видеоплеер - это просто представление, которое я скрываю и показываю всякий раз, когда пользователь фактически воспроизводит видео.
Я реализовал поиск как пункт меню SearchView, который передает фрагмент. Когда вы нажимаете на видео, отображается окно видеопроигрывателя и воспроизводит такое видео. Если вы нажмете затем кнопку «Назад», видеоплеер должен быть закрыт.
Вместо этого Android использует мое обратное нажатие в качестве триггера, чтобы сначала свернуть просмотр поиска на панели действий, а затем при втором нажатии я могу поймать метод onBackPressed в моем действии, чтобы закрыть видео.
Как я могу подключиться до того, как действие будет свернуто, чтобы я мог отключить его и закрыть свой видеоплеер при первом нажатии?
2 ответа
Я думаю, что правильный способ сделать это - добавить MenuItem.OnActionExpandListener
к вашему SearchView
элементу.
Вот так:
searchMenuItem.setOnActionExpandListener(new OnActionExpandListener() {
@Override
public boolean onMenuItemActionExpand(MenuItem item) {
return true;
}
@Override
public boolean onMenuItemActionCollapse(MenuItem item) {
// return true if the item should collapse, false if collapsing should be suppressed.
return false;
}
});
Вы можете просмотреть официальную ссылку на класс интерфейса здесь
При событии клика добавьте первую строку как searchView.setIconified(false);
Похожие вопросы
Новые вопросы
android
Android - это мобильная операционная система Google, используемая для программирования или разработки цифровых устройств (смартфоны, планшеты, автомобили, телевизоры, одежда, стекло, IoT). Для тем, связанных с Android, используйте специальные теги Android, такие как android-intent, android-activity, android-адаптер и т. Д. Для вопросов, не связанных с разработкой или программированием, но связанных с платформой Android, используйте эту ссылку: https: // android.stackexchange.com .