活动的启动模式
来源:互联网 发布:死锁检测算法 编辑:程序博客网 时间:2024/05/22 12:27
1. standard模式
活动的默认模式,在不进行显式指定的情况下,都会自动使用这种启动模式
方式:系统不在乎这个活动时候已经在返回栈中存在过,每启动一次,都创建一个新的实例,入栈到栈顶
2. singleTop模式
方式:当启动该活动的时候,发现该活动已经处于栈顶的话,便可以直接使用它,而不是创建新的实例;但是如果那个时候,该活动并非处于栈顶,还是会创建新的实例的
指定方法:
在AndroidManifest.xml文件中,修改该活动的注册代码:
<activity …… android:launchMode = "singleTop" > <intent-filter> …… </intent-filter></activity>
可见我们通过下面这一行代码指定了启动模式
android:launchMode = "singleTop"
3. singleTask模式
方式:每次启动该活动时候,系统会在返回栈中检查是否存在该活动的实例;如果发现已经存在该活动的实例,就直接使用该实例,并且把在这之上的所有活动通通出栈;如果没有发现该活动的实例,则会创建一个新的实例
指定方法:
在AndroidManifest.xml文件中,修改该活动的注册代码:
<activity …… android:launchMode = "singleTask" > <intent-filter> …… </intent-filter></activity>
可见我们通过下面这一行代码指定了启动模式
android:launchMode = "singleTask"
4. singleInstance模式
我们知道,一个应用程序都有自己的返回栈来管理应用程序内的活动,所有在这个程序内的活动启动销毁都会在这个返回栈中入栈出栈。但是,如果启动模式指定为了singleInstance的话,启动该活动便不会在应用程序的返回栈中入栈,而是开启了一个新的栈,来管理模式为singleInstance的活动。
这样做的意义是什么呢?假设有外部其他程序需要调用我们这个活动,假定为活动A,而其他程序又无法访问我们这个程序的返回栈,因为每个程序都有自己的返回栈。这时候就需要singleInstance模式开辟的新栈,来使得活动得以共享
指定方法:
在AndroidManifest.xml文件中,修改该活动的注册代码:
<activity …… android:launchMode = "singleInstance" > <intent-filter> …… </intent-filter></activity>
可见我们通过下面这一行代码指定了启动模式
android:launchMode = "singleInstance"
查看本活动的编号:this.toString( )
查看本活动所处的栈的编号:getTaskId( )
阅读全文
0 0
- 活动的启动模式
- 活动的启动模式
- 活动的启动模式
- 活动的启动模式
- 活动的启动模式
- 活动的启动模式
- 活动的启动模式
- 活动的启动模式
- 活动的启动模式
- 活动的启动模式
- 活动的启动模式
- 活动的启动模式
- 活动的启动模式
- 活动的启动模式
- 活动的启动模式
- 活动的启动模式
- 活动——活动的启动模式
- android-活动的启动模式
- less学习汇总
- 求知过程之Tomcat阶段一
- jQuery--事件篇
- RecyclerView频道管理
- JMeter学习-005-JMeter 主要组件概要介绍及执行顺序
- 活动的启动模式
- fushia系统的编译环境搭建
- QT关于屏幕保护程序
- 白鹿原
- MediaWiki初探:安装及使用入门
- C# winform把sql查询结果绑定到ComboBox
- NG 线性回归
- Android 读取内存文件返回byte数组
- 高通平台 SBA升级步骤