AlertDialog исчезает после переключения деятельности

1

У меня есть приложение для Android, имеющее AlertDialog с кнопками "ОК" и "Отмена". Когда диалог отображается без нажатия кнопки "ОК" или "Отмена", просто нажмите кнопку "Главная" устройства. Отобразится главный экран. Теперь откройте другое приложение, предположим, что камера. Сделайте снимок или видео. Теперь выйдите из приложения "Камера". Теперь откройте приложение для Android и удивительно, что alertdialog исчез. Почему?

  • 0
    Пытался воспроизвести ситуацию на HTC Hero, но не смог. Мой диалог все еще виден, даже когда я помещаю свое приложение в фоновый режим и запускаю приложение камеры, а затем возвращаюсь к приложению. Какой телефон вы используете? Не могли бы вы предоставить нам некоторый код о том, как вы создаете свой диалог?
  • 0
    После нажатия на приложение запустите приложение камеры и сделайте снимок, затем нажмите кнопку «Назад», чтобы вернуться. Теперь зайдите в свое приложение и увидите, появляется диалоговое окно или нет.
Теги:
android-dialog

2 ответа

2

Я предполагаю, что вы создаете этот метод AlertDialog onCreate(). Во-первых, вы должны прочитать жизненный цикл деятельности.

И что происходит, когда вы переходите в другое приложение, Activity переходит к методу onPause, который немного очищается.

Вызывается, когда система начнет возобновление предыдущего действия. Обычно это используется для передачи несохраненных изменений в постоянные данные, остановки анимаций и других вещей, которые могут потреблять процессор и т.д. Реализации этого метода должны быть очень быстрыми, потому что следующее действие не будет возобновлено до тех пор, пока этот метод не вернется.

Затем, когда вы вернетесь в приложение, он вызывает метод onResume, который не создает ваше диалоговое окно еще раз.

1

Если вы хотите показать диалог при запуске приложения, напишите этот код в

onResume()

он будет показывать диалог каждый раз, когда пользователь вернется на этот экран. Или вы можете управлять своим состоянием в

onPause() 

Ещё вопросы

Сообщество Overcoder
Наверх
Меню