Activity详解(三)

来源:互联网 发布:excel数据 access 编辑:程序博客网 时间:2024/06/04 19:01

三、Activity四种启动模式

1、standard
标准模式,每次启动都会创建Activity,并放到任务栈中。

2、singleTop
栈顶模式,启动Activity时先判断该Activity是否存在并在栈顶,如果满足条件则重用该Activity否则重新创建。

3、singleTask
单任务模式,在启动Activity时首先判断任务栈中是否存在该Activity,若果存在,就将该Activity移到栈顶(即将该Activity上面的所有Activity全部移除任务栈),不会创建新的Activity。

4、singleInstance
在一个新的任务栈中创建该实例,并让多个任务栈共享该实例,一旦该模式的实例存在某个栈中,任何应用在激活该Activity时都会重用该栈中的实例,效果相当多个应用共享一个应用,不管谁激活Activity都会进入同一个应用中。

通过在AndroidManifest.xml中设置activity的android:launchMode=”standard”属性进行配置;或者通过Intent的Flag添加
FLAG_ACTIVITY_NEW_TASK
FLAG_ACTIVITY_CLEAR_TOP
FLAG_ACTIVITY_RESET_TASK_IF_NEEDED
FLAG_ACTIVITY_SINGLE_TOP

注意

在广播和服务启动Activity时必须添加如下代码:

intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
0 0
原创粉丝点击