您的位置:首页 > 移动开发 > Android开发

Android-Activity生命周期小记

2016-07-22 22:29 519 查看
一、Activity的生命周期



1、启动一个新的Activity

依次会执行
OnCreate() //刚启动,第一次调用的时候
|
\|/
OnStart() //当这个activity能够被我们看到的时候
|
\|/
OnResume() //当这个activity能够获得用户焦点的时候(也就是可操作可点击的时候)


2、从一个Activity–A 跳转到Activity–B

依次会执行
activity-A  OnPause() //当应用程序启动了另一个activity。该
|      //activity失去焦点被覆盖
\|/
activity-B  OnCreate() //刚启动,第一次调用的时候
|
\|/
activity-B  OnStart() //当这个activity能够被我们看到的时候
|
\|/
activity-B  OnResume() //当这个activity能够获得用户焦点的时
|       //候(也就是可操作可点击的时候)
\|/
activity-A  OnStop() //当A对于B不可见完全被遮挡的时候
//但是注意Dialog弹框不会调用该方法


2、从一个Activity–B 点击返回键回到Activity–A

依次会执行
activity-B  OnPause() //当应用程序启动了另一个activity。该
|      //activity失去焦点被覆盖
\|/
activity-A  OnResult()//没有被销毁、重新启动
|
\|/
activity-A  OnStart() //当这个activity能够被我们看到的时候
|
\|/
activity-A  OnResume() //当这个activity能够获得用户焦点的时
|       //候(也就是可操作可点击的时候)
\|/
activity-B  OnStop() //当B对于A不可见完全被遮挡的时候
|     //但是注意Dialog弹框不会调用该方法
\|/
activity-B  OnDestory() //activity-B被销毁
//销毁的一般条件(1)finish()(2)按返回键


二、Activity的启动模式

(1)、standrd:默认的启动模式,允许多个activity的对象创建,每次创建都会生成一个新的activity。
(2)、singleTop:处于栈顶就不会创建新的对象(启动相同的activity),可以允许创建多个实例
(3)、singleTask:它允许一个栈中只有一个相同的实例
(4)、singleInstance:它有多个Activity就会有多个栈,每个栈放一个activity
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: