Программирование приложений для мобильных устройств под управлением Android. Часть 1 - страница 9

Шрифт
Интервал


Давайте представим простое приложение с одной Activity. Оно запускается, ожидает мгновение, и затем закрывается. В этом простом случае как только приложение будет запущено, Android вызовет (call back) метод onCreate.

Затем Android вызовет свой метод onStart, и затем onResume, после которого пользовательский интерфейс Activity появится на экране устройства, и пользователь сможет взаимодействовать с ним.

Приблизительно после одной минуты наша Activity начнет закрываться. И в этот момент Android вызовет метод onPause. Затем onStop. И, наконец, onDestroy. Теперь Activity абсолютно уничтожена.

Итак, как видите, все время жизни Activity заключено между onCreate при запуске и onDestroy в конце.

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




Когда Activity становятся видимыми, Android иногда вызывает метод onStart, а иногда – onRestart. Перед тем, как Activity станут невидимыми, Android вызывает метод onStop. Таким образом, время жизни Activity в видимом состоянии длится между запуском вызовов onStart и onStop. И, наконец, в то время как Activity видима на экране, есть отрезки времени, когда пользователь может взаимодействовать с ней, и есть моменты когда не может. Например, это может произойти, когда устройство «засыпает». В этом случае пользователь не может взаимодействовать с Activity даже при том, что эта Activity все еще запущена.

Когда Activity оказывается готова к взаимодействию с пользователем, Android вызывает метод onResume. Когда Activity собирается прекратить взаимодействие с пользователем, Android вызывает метод onPause.

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

Теперь давайте более глубоко рассмотрим эти методы жизненного цикла. Первый метод – onCreate вызывается, когда Activity создается. Обычно onCreate используется, чтобы инициализировать Activity и выполнить следующие четыре функции:

• вызов super.onCreate, который сделает часть собственной инициализации Android;

• установка content view Activity, которая сообщит Android, каким должен быть пользовательский интерфейс Activity;

• получение и сохранение всех необходимых ссылок и соответствий между различными элементами (view) лейаута пользовательского интерфейса и кодом Activity;