栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Adnroid activity启动模式

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Adnroid activity启动模式

1、standard模式

standard模式为activity默认模式,在此模式下,每次启动该activity都会入栈,多次启动会在栈内创建多个该activity,点击back键会依次出栈。

2、singleTop模式

第一种方式看起来有点傻,所以Android又为activity提供了singleTop模式,当activity被指定了此模式后,如果该activity位于栈内顶端每次启动该activity不会重新入栈,就不会出现栈内创建多个该activity的情况,但如果该activity不处在栈内顶端,当再次启动该activity时,仍然会重新入栈。

3、singleTask模式

第二种方式无法解决activity不在栈顶端时activity重复入栈的情况,所以Android又为activity提供了singleTask模式,当栈内有此模式下的activity时,再次启动该activity不会创建新的activity,而是直接将之前已经存在的activity置于栈顶,但要注意的是如果该activity上面有其他activity时,这些activity会被统统出栈。

4、singleInstance模式

singleInstance可以理解为singleTask的加强版,它具备singleTask的所有特性,在此模式下的activity在启动时会被放置在一个单独的任务栈中。

5、其它 5.1 activity启动模式使用

可以在xml配置文件中指定或者在intent启动时指定启动模式

 
Intent intent =new Intent(CaseSetActivity.this,CaseActivity.class);
            intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            startActivity(intent);
5.2 TaskAffinity属性

singleTask模式可以与TaskAffinity配合使用,指定这两种属性的activity会运行在TaskAffinity指定的任务栈中并具备singleTask特性。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/275488.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号