一、返回栈

Android的活动是可以层叠的,每启动一个新的活动,就会覆盖在原活动之上,然后点击Back键会销毁最上面的活动,之前显示的一个活动就会显示出来。

Android是使用任务(Task)来管理活动的,一个任务就是一组存放在栈里的活动的集合,这个栈也称作返回栈(Back Stack)。默认的情况下,每当启动一个新的活动,他会在返回栈中入栈,并处于栈顶的位置。而每当我们按下Back键或调用finish()方法去销毁一个活动时,处于栈顶的活动会出栈,这时前一个入栈的活动就会重新处于栈顶位置。系统总是会显示处于站定的活动给用户。如图显示:


、活动状态

每个活动在其生命周期中最多可能会有四种状态。

1、运行状态

当一个活动处于返回栈的栈顶时,该活动就处于运行状态。

2、暂停状态

当一个活动不再处于栈顶时,但仍然可见时,该活动就处于暂停状态。

3、停止状态

当一个活动不再处于栈顶时,并且完全不可见时,该活动就处于停止状态。系统仍然会为该状态下的活动保存相应的状态和成员变量,但系统内存不足时就有可能被系统回收。

4、销毁状态

当一个活动从返回栈中被移除时就会处于销毁状态。系统最倾向于回收该状态下的活动。


三、活动的生命周期



1、onCreate()

活动在第一次被创建时调用

2、onStart()

活动由不可见变为可见时调用

3、onResume()

活动准备好与用户交时调用,此时活动一定处于栈顶,并处于运行状态。

4、onPause()

系统准备去启动或恢复另一个活动的时候调用。

5、onStop()

活动完全不可见的时候调用。如果启动的是对话框式的活动时,onPause()会执行,而onStop()并不会执行。

6、onDestroy()

活动在销毁之前调用。

7、onRestart()

活动由停止状态变为运行状态时之前调用。

活动的三种生存期:

①完整生存期:

onCreate()到onDestroy()之间所经历的

②可见生存期:

onStart()onStop()之间所经历的

③前台生存期:

onResume()onPause()之间所经历的


更多相关文章

  1. 以android状态栏虚拟按键消息为例学习在input系统插入按键消息的
  2. Android状态保存与恢复流程 完全解析
  3. 开始今天的学习吧!Android开发Day1
  4. android app -- 关于listview的几种用法(复用,不复用,半复用)解决ite
  5. 【整理】Android中使用XML自定义组件各种状态下的背景图片
  6. Android网络连接状态
  7. android Activity窗体显示状态设置
  8. Android底部菜单栏(RadioGroup+Fragment)美化
  9. Android(安卓)P Vold分析 VolumeBase::create()中的setState(Sta

随机推荐

  1. Android(安卓)OpenCV(三十一):图像形态学
  2. Android模拟器正确应用与安装方法
  3. Android通过蓝牙HC06与Arduino通信实例
  4. 『叫兽学堂』手把手教你如何正确启动Andr
  5. [Android] [Android的视窗系统及显示机制
  6. Android(安卓)4.4、5.1、6.0 屏蔽Home键
  7. React-Native之Android(6.0及以上)权限申
  8. Android运用自定义控件实现闪烁字
  9. 应用程序开发感受对比-Symbian/Android/iP
  10. android 蓝牙连接通信