Activity的启动模式
2016-03-24 19:00
357 查看
Activity的四种启动模式:
在AndroidManifest.xml中给Activity进行配置,配置代码:
模式一
模式二
模式三
模式四
在AndroidManifest.xml中给Activity进行配置,配置代码:
android:launchMode="" 四种模式:Standard、singleTop、SingleTask、singleInstance |
standard模式:没有在AndroidManifest.xml文件中配置,或者配置为android:launchModel="standard"。 当启动一个Activity activity的时候,不管Activity栈中是否已经有此activity的实例,都会创建一个新的activity的实例 并置Activity栈的栈顶。 |
singleTop模式:在AndroidManifest.xml中配置为android:launchModel="singleTop"。 当启动一个Activity activity的时候,如果Activity栈的栈顶是activity的实例,那么系统将不创建新的activity实例, 而是沿用栈顶的activity实例,并且会执行activity中的onNewIntent方法。 如果Activity栈顶不是activity的实例,则和standard模式处理方式一样。 |
singleTask模式:在AndroidManifest.xml中配置android:launchMode="singleTask"。 当启动一个Activity activity的时候,如果Activity栈中,不管是栈顶还是栈的其它位置,只要含有activity的实例, 系统则不会创建新的activity实例,而是把activity实例提置栈顶,activity实例之上的其他Activity实例被移除栈, 即销毁他们。并且会执行activity的onNewIntent方法。 如果Activity栈中不包含activity实例,则和standard模式处理方式一样。 |
singleInstance模式:在AndroidManifest.xml中配置为android:launchMode="singleInstance"。 当启动一个Activity activity的时候,系统先查询所有其他的Activity栈中是否包含activity实例,如果包含 则不创建,直接使用现有的activity实例,并且调用onNewIntent方法。如果不存在,则会创建一个activity 实例,并且把新创建的activity实例置一个新的栈中,新栈理论上只会有activtiy这一个Activity。Activity的启动模式 |
相关文章推荐
- 刺客文化如何
- 实验一 命令解释程序cmd的编写
- 实现LIVE页面编辑的方 4000 法学习总结(免刷新)
- Android中为控件之间添加分割线
- CSS中的常用属性
- hdu 最大三角形(凸包+旋转卡壳)
- 手机真机访问笔记本Tomcat服务器
- ansible常见错误
- 游戏分析指标之--DAU/MAU
- Microsoft Visual Studio6.0\VC98\INCLUDE\userenv.h(15) : fatal error C1083: Cannot open include file:
- 从零开始_学_数据结构(三)——树的初步应用
- error: cannot parse version string: kg01
- android常用颜色配置xml
- solr多条件查询(一)
- codeforces 597C C. Subsequences(dp+树状数组)
- jquery 选择器,模糊匹配
- 《世界是数字的》读后感
- Servlet笔记
- 15电气郑明雨作业1
- 15电气郑明雨作业2