2015-03-11 2 views
0

В Android developer diagram я видел, что onResume() всегда вызывается до onPause(). Предполагая, что пользователь запустил новый Activity, зачем ему должно предшествовать onResume()?Android Жизненный цикл Android - onPause() и onResume()

Я имею в виду:

OnResume можно назвать в 2 случаях жизни:

1), когда пользователь начинает новую деятельность (до OnPause)

2), когда активность, если пользователь приносит активность назад до переднего плана

Я ожидаю, что в каждом случае что-то еще нужно сделать.

ответ

0

Вы ошибаетесь. Всякий раз, когда создается действие, onResume вызывается сразу после onStart. Всякий раз, когда ваша активность возвращается, вызывается стек onPause. Опять же, если ваша деятельность возвращается на передний план, то вызывается onResume. Итак, это не так, onResume вызывается до onPause. Всякий раз, когда активность возвращается из OnPause состояния, onResume будет вызываться вместо OnStart или OnCreate. Это происходит, так что Android не должен создавать экземпляр Activity снова и снова, хотя эти экземпляры не были должным образом уничтожены. Это тоже эффективная память.

1

onResume() всегда вызывается перед onPause()

Это правильно. onResume всегда вызывается, когда активность запускается в первый раз, перед тем onCreate, а когда активность возобновляется (пользователь переходит обратно к активности)

Предполагая, что пользователь запускает новую активность, почему onPause() быть предшествует onResume()

только вызывается, когда активность ставится на фоне, или перед onDestroy если заявка уничтожается. Таким образом, является всегда, который был вызван после был сделан звонок в onResume. Зачем? Потому что это жизненный цикл Activity, определяемый платформой Android.

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