Android Activity的LaunchMode

来源:互联网 发布:数据库一体机国内厂商 编辑:程序博客网 时间:2024/05/01 04:25

1. standard:标准模式

系统的默认模式,不管有没有已存在的实例,系统都会在task中生成新的实例。

2. singleTop:栈顶复用模式

android:launchMode="singleTop"

如果新的Activity已经位于任务栈的栈顶,那么此Activity不会被重新创建,同时它的onNewIntent方法会被调用,通过此方法的参数我们可以取出当前请求的信息。

如果新Activity的实例已存在但不是位于栈顶,那么新Activity仍然会重新创建。

3. singleTask:栈内复用模式

android:launchMode="singleTask"

这是一种单例模式。

只要Activity在一个栈中存在,那么多次启动此Activity都不会重新创建实例,此Activity实例之上的其他Activity实例统统出栈,使此Activity实例成为栈顶对象,和singleTop一样,系统也会回调onNewIntent

4. singleInstance:单实例模式。

加强的singleTask,除了具有singleTask模式的所有特性外,还加强了一点,那就是只能单独位于一个任务栈中。

原创粉丝点击