安卓活动的启动模式
来源:互联网 发布:什么软件买东西便宜 编辑:程序博客网 时间:2024/06/06 05:25
standard模式
这种模式是系统的默认模式,每当启动一个新的活动的时候就会返回栈,并且处于栈顶,
那么又会重新创建一个活动,如果是相同的活动的话,那就浪费内存了,举个例子
Intent intent = new Intent(First.this, First.class);startActivity(intent);
示意图如下:
这样就会重复,但是下面的singleTop模式就可以避免这种情况!
singleTop模式
singleTop模式可以避免那种情况,它可以判断栈顶是否存在该活动,如果存在的话,不会再创建实例,而是继续使用原来的实例活动,但是此举也有一个缺陷,那就是它只会在栈顶判断是否存,那么在下面这个情况就不可以判断了:
First.Java
Intent intent = new Intent(First.this, Second.class);startActivity(intent);
Second.java
Intent intent = new Intent(Second.this, First.class);startActivity(intent);
那么系统还是会重新创建一个活动,因为此时栈顶为Second,而不是First
示意图如下:
接着 继续介绍第三种模式
singleTask模式
singleTask模式可以很好的解决重复 创建栈顶活动问题,它会出栈检查全部是否存在该活动,如果存在,就重新使用原活动。
第二种情况可以解决
示意图如下:
singleInstance
singleInstance模式是四种模式较为复杂的模式,和上述三种模式不同,
被指定为此模式的活动,会独立启用一个新的栈来管理这个活动。
示意图如下:
阅读全文
0 0
- 安卓活动的启动模式
- 安卓开发:活动的四种启动模式
- 安卓活动的启动方式
- 第一行安卓代码——活动的启动模式2.5
- 活动的启动模式
- 活动的启动模式
- 活动的启动模式
- 活动的启动模式
- 活动的启动模式
- 活动的启动模式
- 活动的启动模式
- 活动的启动模式
- 活动的启动模式
- 活动的启动模式
- 活动的启动模式
- 活动的启动模式
- 活动的启动模式
- 活动的启动模式
- 【leetcode】valid-palindrome
- Java学习笔记-《Java程序员面试宝典》-第四章基础知识-4.5字符串与数组(4.5.1-4.5.3)
- BroadcastReceiver 详解
- Android7.0中文文档(API)-- PopupMenu
- 组件的使用
- 安卓活动的启动模式
- selenium web 自动化环境搭建(Windows7 环境, Chrome, Python)
- java:14-类型转换与接口
- 注解(Annotation)那点事
- LeetCode | 41. First Missing Positive
- Spring MVC整合beetl之后添加国际化
- HBase flush issue
- java类的内存分配
- 网页铺满全屏,不需滚动条的设置方法