四种android:LanchMde模式

原创 2015年07月09日 12:46:50

首先一定要理解android中task(任务)是一个栈结构的对象,可以存储Activity对象。

1.stander启动模式

在AndroidManifest.xml的activity标签中写入android:launchMode="standard"

然后在该acitivity中使用intent调用自己,并在TextView中显示this.toString(),自己的名称

会发现每按一次TextView所显示的序列号都是不一样的。

说明task栈中只存了多个Activity对象。


2.singleTop启动模式

在AndroidManifest.xml的第一个activity标签中写入android:launchMode="singleTop"

然后再建立第二个acitivity,由第一个activity调用第二个acitivity后,再返回第一个activity时会因为第一个acitivty不在栈顶,重新建立一个第一个activity。


3.singleTask启动模式

在AndroidManifest.xml的第一个activity标签中写入android:launchMode="singleTask"

然后再建立第二个acitivity,由第一个activity调用第二个acitivity后,再返回第一个activity时会因为第一个acitivty不在栈顶,而把比第一个acitivity高的对象都挤出去,使得第一个activity显示出来。


4.singleInstance启动模式

在AndroidManifest.xml的第一个activity标签中写入android:launchMode="stander",第二个activity标签中写入android:launchMode="singleInstance"

由第一个activity调用Intent进入第二个acitivity后,第二个acitivity会查看是否已经由存在一个新task栈只有第二个acitivity,如果没有的话就重新开辟一个新的task专门存放第二个acitivity,再由第二个acitivity调用Intent进入第一个acitivity,第一个acitivity还是原来的acitivity对象并没有新建,但当第一个acitivity调用Intent进入第二个acitivity时,新的task栈中会实例化新的第二个activity对象,如此循环往复。当点击back按钮时会从第一个acitivity退回新的task栈的栈顶,如果新的栈中被实例了5个第二个activity(相当于你前面已经五次通过Intent从第一个acitivity进入第二个acitivity中),那么就必须按5次back才会跳回,第一个acitivity的那个栈。

参考博客:http://blog.csdn.net/liuhe688/article/details/6754323/

Activity四种启动模式说明

1,standard标准模式: 每次启动一个Activity都会重新创建一个实例,即调用Activity创建时的生命周期方法onCreate,onStart,onResume;被启动的Activity...
  • u011959433
  • u011959433
  • 2016年03月21日 15:54
  • 1988

Activity 四种启动模式的区别

Android Activity 四种启动模式的区别 分享到: 通过昨天的学习,相信大家已经对Android Activity的四种启动模式有了非常清楚的认识,那么,Android...
  • zhang31jian
  • zhang31jian
  • 2013年12月17日 17:00
  • 4398

彻底弄懂Activity四大启动模式

最近有几位朋友给我留言,让我谈一下对Activity启动模式的理解。我觉得对某个知识点的理解必须要动手操作才能印象深刻,所以今天写一篇博文,结合案例理解Activity启动模式。由于之前看过“区长”的...
  • mynameishuangshuai
  • mynameishuangshuai
  • 2016年05月24日 16:04
  • 54955

Android中Activity四种启动模式和taskAffinity属性详解-Rong

  • 2015年09月22日 16:44
  • 193KB
  • 下载

Android Activity的四种加载模式区别

  • 2013年07月22日 01:27
  • 789KB
  • 下载

android Activity 四种启动模式例子

  • 2015年11月07日 14:25
  • 996KB
  • 下载

Android中Activity的四种启动模式案例

  • 2016年04月24日 18:10
  • 64KB
  • 下载

Android:图解四种启动模式 及 实际应用场景讲解

在一个项目中会包含着多个Activity,系统中使用任务栈来存储创建的Activity实例,任务栈是一种“后进先出”的栈结构。举个栗子,若我们多次启动同一个Activity,系统会创建多个实例依次放入...
  • ITermeng
  • ITermeng
  • 2017年03月13日 10:36
  • 2560

Android入门:Activity四种启动模式

一、启动模式介绍 启动模式简单地说就是Activity启动时的策略,在AndroidManifest.xml中的标签的android:launchMode属性设置; 启动模式有4种,分别为...
  • xiazdong
  • xiazdong
  • 2012年07月16日 23:48
  • 12839

Android—四种启动模式

Activity的启动模式有4种,分别是standard,singTop,singleTask和singleInstance.在AndroidManifest.xml中,通过标签的android:la...
  • xyy_97
  • xyy_97
  • 2017年03月23日 10:24
  • 92
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:四种android:LanchMde模式
举报原因:
原因补充:

(最多只允许输入30个字)