整理——Activity四种加载模式 launch mode

Activity有四种加载模式,分别为:

standard, singleTop, singleTask和singleInstance

这4中模式又分两类,standard和signleTop属于一类, singleTask和signleInstance属于另一类。

设置的位置在AndroidManifest.xml文件中activity元素的Android:launchMode属性:

<activity android:name="" android:launchMode="singleTask"></activity>  

1.standard模式(默认),标准模式

每次启动Activity都会创建一个新的Activity实例,并且将其压入任务栈栈顶,而不管这个Activity是否已经存在。

Activity的启动三回调(onCreate()->onStart()->onResume())都会执行。

2.singleTop模式,栈顶复用模式

这种模式下,如果新的Activity已经位于任务栈顶,则此Activity不会被重新创建。Activity的onNewIntent()方法会被回调

  如果Activity已存在但不在栈顶,那么作用和standard模式一样。

3.singleTask模式,栈内复用模式

创建singleTask模式的Activity时,系统会检查任务栈内是否已存在该Activity的实例,若存在,那么这个Activity会被调到栈顶,

 并且singleTask会清理当前Activity上面的所有activity。

4.singleInstance模式,加强版的singleTask模式

singleInstance模式的Activity只能单独位于一个任务栈中,栈内复用。

  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值