Activity的四种启动模式
来源:互联网 发布:远野贵树 程序员 编辑:程序博客网 时间:2024/05/17 22:00
Activity的四种启动模式
这是本人的第一篇博客,很多小伙伴是不是跟我一样很像成为业界的一名大神,本人正在回顾Android知识点,我们一起来学习吧。
standard标准模式:就是正常activity启动的模式。
singleTop单一顶部模式:当创建activity的时候会去检查当前任务栈的栈顶,如果栈顶是当前的实例,就不再创建。
singleTask 单一任务模式:当创建activity的时候会去检查当前的任务栈中是否有这样的实例,如果有的话直接复用,并清除任务栈上面的所有activity。如果没有的话,就创建一个。
singleInstance 单一实例模式:在创建activity的时候,系统会单独给activity 创建一个任务栈,并且任务栈中有且只有一个这样的实例。
有的小伙伴可能会问,什么是任务栈啊?
简单的说就是以栈形式存放任务的内存空间。
例子说明一切:
创建两个Activity,MainActivity和SecondActivity,两个Activity的代码相同,如下:
//点击按钮跳转第一个页面 public void click1(View v) { Intent intent = new Intent(this,MainActivity.class); startActivity(intent); } //点击按钮跳转第二个页面 public void click2(View v) { Intent intent = new Intent(this,SecondActivity.class); startActivity(intent); }
清单文件中的代码如下:
<activity android:name="com.itheima.lunchmode.SecondActivity" //这里定义不同的运行模式 android:launchMode="singleTop"> </activity>
1:设置为singleTop时:运行效果如下:
可以看到我点击Open2了很多次,但是我按了一次返回键它就退回了第一个页面,说明第二个页面只创建了一个实例.
2:设置为singleTask时:运行效果如下:
这种模式下,不管我怎么点击,我按了两个返回键才退出,说明,第一次打开第二个页面的activity之前的activity没有被清空,后面的activity都被清空了.
3:设置为singleInstance时:运行效果如下:
这种模式下,我相互点击了很多次,但是第二个页面的activity只有一个,第一个页面创建了多少个还是多少个.为什么呢?看看上面的定义你就明白了.
4:standard模式:我就不演示了,平时的就是这个模式.
小伙伴们,你们明白了吗?
0 0
- Activity的四种启动模式
- Activity的四种启动模式
- Activity的四种启动模式2
- Activity的四种启动模式
- activity的四种启动模式
- Activity启动的四种模式
- Activity的四种启动模式
- activity 的四种启动模式
- activity 的四种启动模式
- 分析Activity的四种启动模式
- Activity的四种启动模式
- Activity的四种启动模式
- Activity的四种启动模式
- Activity 四种启动模式的区别
- Activity的四种启动模式
- activity 的四种启动模式
- Activity的四种启动模式
- Activity的四种启动模式(LaunchMode)
- Revi+Geometry属性的参数
- Codevs1183泥泞的道路
- Hadoop配置SSH免密码登录
- 新的可视化帮助更好地了解Spark Streaming应用程序
- Spring 读书笔记-----使用Spring容器(一)
- Activity的四种启动模式
- HTML5快速上手之5:与图片有关的基本指令
- excel导出数据反射+注解
- Java开发中的23种设计模式详解(转)
- android的context
- 上拉电阻、下拉电阻认识
- maven工程用tomcat7插件部署时内存溢出问题
- AndroidStudio插件—Android Drawable Importer (Android插件—Android Drawable Importer )
- 第一章html课后题4 聚美优品菜单列表