Android启动模式launchMode
2016-05-20 02:32
281 查看
在Android里,有4种Activity的启动模式并分别介绍下:
standard
singleTop
singleTask
singleInstance
AndroidManifest.xml配置android:launchMode属性
1.standard:
默认启动模式.
每次都会创建一个实例,每个任务栈里面都可以使用。
2.singleTop:
系统会按照singleTop启动模式处理跳转行为.跳转时系统会先在栈结构寻找是否有一个Activity实例正位于栈顶,如果有则不在生成新的,而是直接使用。如果系统发现存在有Activity实例,但不是位于栈顶,重新生成一个实例.
singleTop启动模式就是这样,如果发现对应的Activity实例正处于栈顶,反复创建也就只能创建一个实例(反复利用不生成新的实例).反之,此时不处于栈顶就创建新的实例。
3.singleTask:
如果发现有对应的Acitivty实例,则使此Activity实例之上的Activity实例统统退出栈,使此Acitivity实例成为栈顶对象,显示到屏幕前。
4.singleInstance:
这钟启动模式比较特殊,因为它会启用一个新的栈结构,将Activity放置于新的栈结构中,并保证不再有其他Activity实例进入.
只存在一个独立的任务栈里面,一个任务栈就只包括它一个。
1.文字表述比较抽象,画图演示可好?
singleTop
![](https://images2015.cnblogs.com/blog/695096/201605/695096-20160520134021498-1557984390.png)
singleTask
![](https://images2015.cnblogs.com/blog/695096/201605/695096-20160520134136513-1443319730.png)
singleInstance
![](https://images2015.cnblogs.com/blog/695096/201605/695096-20160520134233326-2023928312.png)
2.这些启动模式在哪里地方能用到呢?
3.启动模式背后的秘密?
standard
singleTop
singleTask
singleInstance
AndroidManifest.xml配置android:launchMode属性
1.standard:
默认启动模式.
每次都会创建一个实例,每个任务栈里面都可以使用。
2.singleTop:
系统会按照singleTop启动模式处理跳转行为.跳转时系统会先在栈结构寻找是否有一个Activity实例正位于栈顶,如果有则不在生成新的,而是直接使用。如果系统发现存在有Activity实例,但不是位于栈顶,重新生成一个实例.
singleTop启动模式就是这样,如果发现对应的Activity实例正处于栈顶,反复创建也就只能创建一个实例(反复利用不生成新的实例).反之,此时不处于栈顶就创建新的实例。
3.singleTask:
如果发现有对应的Acitivty实例,则使此Activity实例之上的Activity实例统统退出栈,使此Acitivity实例成为栈顶对象,显示到屏幕前。
4.singleInstance:
这钟启动模式比较特殊,因为它会启用一个新的栈结构,将Activity放置于新的栈结构中,并保证不再有其他Activity实例进入.
只存在一个独立的任务栈里面,一个任务栈就只包括它一个。
1.文字表述比较抽象,画图演示可好?
singleTop
![](https://images2015.cnblogs.com/blog/695096/201605/695096-20160520134021498-1557984390.png)
singleTask
![](https://images2015.cnblogs.com/blog/695096/201605/695096-20160520134136513-1443319730.png)
singleInstance
![](https://images2015.cnblogs.com/blog/695096/201605/695096-20160520134233326-2023928312.png)
2.这些启动模式在哪里地方能用到呢?
3.启动模式背后的秘密?
相关文章推荐
- Think Android 的数据库用法(一)
- Android开发之获取手机SIM卡信息
- Android手机在开发调试时logcat不显示输出信息的解决办法
- Android第一课笔记
- AndroidStudio 优秀插件汇总
- 蜂窝教育Android培训:技能与薪资双收
- Android TextView与EditText 同步显示
- android开发笔记之ViewPager新手导航页(动态加载指示器)
- Android聊天界面实现方式
- 【转】【翻译】Android Support Library Features(二)
- android基础之应用程序开发目录介绍
- Android中常见IPC方法总结
- 【转】【翻译】Android Support Library Features(一)
- Android开发--所有动画使用详解
- Android四大组件之Activity
- Android Drawable - State List Drawable使用详解(附图)
- 安卓事件传递机制个人理解版
- 一个帖子学会Android开发四大组件
- Android Studio JNI编程
- Android五种储存方式—sqlite数据库存储