2010-09-06 3 views
0

Я пишу приложение для Android, в котором я расширил класс Application, чтобы сохранить некоторые глобальные переменные. Я инициализирую эти глобальные вары в своей корневой активности (первый экран, который видит пользователь).Android: контекст приложения, принудительный корень, который нужно показать при запуске

Мое приложение содержит ряд мероприятий, содержащих ListViews, полный выбираемых элементов. Когда пользователь выбирает элемент, в стеке отображения выводится новое действие.

Теперь, если пользователь находится на третьем или четвертом мероприятии, а затем они нажимают кнопку «Домой», мое приложение скрывается. Если пользователь затем принудительно закрывает мое приложение (используя Killer Task), а затем снова открывает мое приложение, контекст приложения инициализируется, и приложение запускается в Activity, который был включен пользователем, когда они нажимали кнопку «Домой». Но проблема в том, что ни одна из моих глобальных переменных не была инициализирована в этот момент, поскольку все это происходит только в моем первом действии.

Итак, есть ли способ заставить мой корневой актив всегда появляться, когда мое приложение выходит на передний план, если объект приложения еще не инициализирован?

+1

Wise Shepherd: Почему бы не «инициализировать эти глобальные вары» в самом «приложении», в 'onCreate()'? – CommonsWare

+0

Извините, я должен был уточнить. Эти «глобальные вары» инициализируются на основе ввода пользователя. (В показанном первом показанном поле содержится несколько полей для ввода пользователем некоторых данных, с помощью которых я инициализирую пользовательский объект. Затем данные из этого пользовательского объекта используются во всем приложении, поэтому я хочу, чтобы он был «глобальным var»). –

ответ

1

Что вы можете сделать, это проверить, инициализированы ли эти глобальные переменные в ваших действиях onResume, а если нет, запустите главное Activity.

 Смежные вопросы

  • Нет связанных вопросов^_^