1. Back Stack(返回栈)
Android是使用任务(Task)来管理活动的,一个任务就是一组存放在栈里的活动的集合,这个栈也被称作返回栈(Back Stack)。栈是一种LIFO(后进先出)的数据结构,在默认情况下,每当我们启动一个新的活动,它会在返回栈中入栈,并处于栈顶的位置,这时前一个入栈的活动就会重新处于栈顶的位置。系统总是会显示处于栈顶的活动给用户。
2. 活动状态
-
运行状态
当一个活动位于返回栈的栈顶是,这时活动就处于运行状态 -
暂停状态
当一个活动不再处于栈顶位置,但仍然可见时,这个活动就进入了暂停状态。 -
停止状态
当一个活动不再处于栈顶位置,并且完全不可见的时候,就进入了停止状态。 -
销毁状态
当一个活动从返回栈中移除后就变成了销毁状态。
3. Activity的生存期
具体可以将Activity分为三种生存期
-
完整生存期(Entire Lifetime)
Activity在onCreat()方法和onDestroy()方法之间所经历的,就是完整生存期。 -
可见生存期(Entire Lifetime)
Activity在onStart()方法和onStop()方法之间所经历的,就是可见生存期。在可见生存期内,Activity对于用户总是可见的,即便有可能无法和用户进行交互。 -
前台生存期(Entire Lifetime)
Activity在onResume()方法和onPause()方法之间所经历的,就是前台生存期。在前台生存期内,Activity总是处于运行状态,此时的Activity是可以与用户进行交互的。