Android学习之路------activity的四种启动模式分析

来源:互联网 发布:mac os 升级版本 编辑:程序博客网 时间:2024/05/17 04:21

一、Actvity基础知识

Activity存在于任务栈中,俗称Task,一般情况下,每当我们新打开一个activity,都会将这个activity压入栈中,当我们按了back后,就会将这个activity弹出栈,但是特殊情况下,比如我们指定了activity的启动模式,情况可能就会变化

Activity的启动模式:

  • standard
  • singleTop
  • singleTask
  • singleInstance

这几种启动在AndroidManifest.xml中进行,例如:

<activity android:name=".ThirdActivity"          android:launchMode="singleInstance"></activity>

1、standard

android中activity默认的启动模式,每当启动一个activity,就会将当前activity压入当前栈,back时弹出activity

2、singleTop

在启动activity时,会判断这个activity是不是位于栈顶,如果位于栈顶,不会再新建这个activity的实例,如果这个activity不处于栈顶,会重新新建activity的实例,

3、singleTask

启动activity时,会判断是否这个activity在栈中有实例,如果有实例,直接弹出栈中在这个activity之上的其他activity实例,这时候 这个要打开的activity就处于栈顶了

4、singleInstance

启动activity时,会为这个activity新建一个栈,这个栈中只存在一个activity实例

0 0
原创粉丝点击