Из метода onPrepareOptionsMenu (Menu) я остановил поток, когда я собирался отобразить меню, потому что фоновый поток, который потребляет много времени обработки, делает отображение и нажатие одной кнопки меню (а не кнопка меню) практически невозможно. После остановки потока отображение и щелчок по меню (а не кнопка меню) становятся более управляемыми. Проблема возникла, когда клавиша «назад» была нажата сразу же после отображения меню. Мне нужно перезапустить поток после того, как пользователь нажмет клавишу «назад», но нет метода (я попробовал onBackPressed() и onKeyDown()), который я знаю, чтобы перехватить «задний» ключ. Я действительно оценил, может ли кто-то ответить на этот вопрос.Не обнаруживает метод onKeydown при нажатии клавиши «назад»
ответ
Это всегда работает для меня
@Override
public void onBackPressed() {
// remover this line super.onBackPressed();
Now you can do whatever you want, start your thread and any other task
}
Edited Согласно новому вопросу
Когда ключ обратно ударит, то андроид имеет его по умолчанию action.So, если вы хотите, чтобы захватить обратно нажатие клавиши затем использовать onbackpressed и делать то, что вы хотите
Я не думаю, что это сработает, потому что фокус не находится в классе Activity (ну, в моем случае, это MapActivity) больше, когда я нажал кнопку меню. – user1161829
Одна вещь, которую я обязательно проверю, когда вы нажмете кнопку «Назад», этот код будет на 100% звонить либо в MapActivity, либо в простом действии – Sameer
To: ghostbust555 – user1161829
- 1. onKeyDown не вызывается при нажатии клавиши на вид
- 2. При нажатии клавиши «Назад» активность не возвращается
- 3. Выполнить метод Jquery при нажатии клавиши ввода
- 4. Как скрыть при нажатии клавиши назад или при открытии деятельности
- 5. При нажатии клавиши ввода не перенаправляется
- 6. Как остановить MediaPlayer при нажатии клавиши Home?
- 7. Не preventDefault при нажатии клавиши
- 8. Какой метод при нажатии кнопки навигации «назад»?
- 9. LoaderManager вызывается автоматически при нажатии клавиши «Назад» на Android?
- 10. Цикл функции при нажатии клавиши
- 11. Обращение с кнопкой «Назад» при нажатии клавиши вверх
- 12. Задержка выполнения кода при нажатии клавиши при нажатии клавиши ввода
- 13. Как перемещать курсор мыши при нажатии клавиши?
- 14. Firefox OnKeyDown обнаружения нажатой клавиши
- 15. Android onKeyDown() не выполняется при нажатии кнопки удаления
- 16. Обновлено до AppCompat v22.1.0 и теперь onKeyDown и onKeyUp не запускаются при нажатии клавиши меню
- 17. Android: метод OnCreate() не звонит при нажатии кнопки «Назад»
- 18. Ncurses не обнаруживает нажатия клавиши
- 19. Javascript обнаруживает нажатые клавиши
- 20. Android - при нажатии назад
- 21. Paper.js onKeyDown метод
- 22. Не удается разрешить метод onKeyDown
- 23. Игнорирование входных символов при нажатии клавиши
- 24. Изменение изображения Javascript при нажатии и нажатии клавиши
- 25. Выполнить действие при нажатии клавиши
- 26. Добавить JLabel при нажатии клавиши
- 27. Предотвращение дефолта не работает при нажатии клавиши
- 28. Предварительный просмотр не загружается при нажатии клавиши
- 29. calendarextender не закрывается при нажатии клавиши эвакуации
- 30. Форма не отправляется при нажатии клавиши ввода
Перехват назад onKeyDown() Я уверен, никогда не работает, но onBackPressed() всегда работает для меня. Можете ли вы предоставить код? – ghostbust555
, если вы переопределяете onbackPressed, вы можете делать все, что хотите. – Sameer
Большое спасибо за помощь. Я попробовал метод onBackPressed(), но это не сработало. Угадай, что? Я частично исправил проблему: когда я включил метод public void onOptionsMenuClosed (Меню), клавиша «Назад», нажатая сразу же после отображения меню, выполнила метод void onOptionsMenuClosed (Меню). Однако, когда я отобразил одно из подменю из одного из меню, а затем нажал клавишу «назад», метод void onOptionsMenuClosed (меню меню) не получил выполнение. Ты попробуй и вернись ко мне. Огромное спасибо. – user1161829