活动的生命周期
掌握活动的生命周期的意义在于,可以写出更加连贯流畅的程序,并能够合理的管理应用资源,这样会提供更好的用户体验。
返回栈
Android的活动是可以覆盖的
Android使用任务(Task)来管理活动,一个任务就是一组存放在栈里的活动的集合,这个栈也成为返回栈
栈是后进先出的数据结构
活动状态
- 运行状态
活动位于返回栈的栈顶 - 暂停状态
不再处于栈顶,但是仍然可见 - 停止状态
不处于栈顶,完全不可见 - 销毁状态
从返回栈中移除后
活动的生存期
Activity类定义了七个回调方法,覆盖了活动生命周期的每一个环节
- onCreate()。活动第一次被创建时调用
- onStart()。活动由不可见变为可见时调用
- onResume()。活动准备好和用户进行交互时调用
- onPause()。系统准备去启动或恢复另一个活动时调用
- onStop()。活动完全不可见时调用
- onDestroy()。活动被销毁之前调用
- onRestart()。活动由停止状态变为运行状态之前调用
上述七类方法除了onRestart()之外,都是两两相对的,从而可将活动分为3种生存期。
完整生存期
活动在onCreate()方法和onDestroy()方法之间所经历的,就是完整生存期。可见生存期
活动在onStart()方法和onStop()方法之间所经历的,就是可见生存期。前台生存期
活动在onResume()方法和onPause()方法之间所经历的,就是前台生存期。
活动的启动模式
启动模式一共有4种,分别是standard、singleTop、singleTask、和singleInstance。可以在AndroidManifest.xml文件通过给