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

《Android开发艺术探索》之学习笔记(一)Activity的生命周期和启动模式

2016-08-07 08:56 267 查看

Activity的生命周期:

onStart、onStop 从是否可见角度来回调;onResume、onPause 从是否位于前台角度来回调。

Activity A -> Activity B :A onPause -> B onResume

系统资源配置发生变化导致Activity被销毁并重新创建。Activity异常销毁,系统回调onSaveInstanceState来保存Activity当前状态。onSaveInstanceState -> onStop -> onStart -> onRestoreInstanceState,onSaveInstanceState和onPause没有既定时序关系。

Activity的启动模式:

standard:

标准模式。每次启动一个Activity都会重新创建一个实例。被启动的Activity运行在启动它的那个Activity所在的栈中。

singleTop:

栈顶复用模式。如果新的Activity已经位于栈顶,它不会被重新创建,系统回调onNewIntent。

singleTask:

栈内复用,单例模式。Activity在一个栈中只有一个实例。如果Activity想要的栈不存在,则先创建栈,然后创建Activity的实例并入栈。如果栈内存在Activity的实例,则把Activity上面的其他Activity全部出栈,使它位于栈顶。TaskAffinity标识Activity所需要的任务栈的名字,默认情况下,所有Activity所需的任务栈的名字都是应用包名。

singleInstance:

独立栈内单例模式。系统为Activity单独创建一个任务栈,栈内只有它的实例。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android
相关文章推荐