Я знаю, что эта тема была задана триллионами раз в Интернете, но нет ни одного места, отвечающего на нее.BadTokenException - кнопка BACK
в моем приложении, у меня есть экран приветствия. когда я запускаю программу в конец, все просто прекрасно - открывать/закрывать действия и показывать диалоги всех видов.
, но, когда я достигаю экран приветствия и оттуда нажатием на кнопку НАЗАД - все становится грязным:
1) диалог я хочу показать причину BadTokenException (я использую this
и не getApplicationContext()
).
2) Я попытался использовать try/catch, чтобы поймать исключение - и он действительно прошел линию showDialog
. но затем, во 2-м. при достижении выражения showDialog
он выбрасывает IllegalStateException: [email protected]9830 has already been added to the window manager
.
Кроме того, я понимаю, что нажатие HOME вызывает onPause в действии, в то время как BACK вызывает onDestroy, но что не так?
Я пытаюсь исправить эту проблему за более недели, но безуспешно. любые идеи?
единственное, что я могу думать о замене «добавить свой код здесь» звонит закончить(). проблема - finish() вызывают то же поведение, что и кнопка BACK :( – Amico
finish() вызывают то же поведение, что и кнопка BACK! ??? Finish() вызывается, когда ваша активность завершена и должна быть закрыта (вызов onDestroy) .Если действие кнопки «назад» вы можете переопределить и сделать по своему желанию –
Labeeb, это не то, что я имел в виду, «вызывают то же поведение, что и кнопка BACK». Я имел в виду, если бы я попытался позвонить на главный экран , Я получаю ту же ошибку и исключение. Что я могу записать в кнопке BACK? - нажатие назад из основного действия возвращает экран HOME, который в порядке, но вызывает проблемы на пути. – Amico