Android读书笔记------LaunchMode

(内容来源于Android开发艺术探索)
Android Activity运行的4种状态
1、standard模式,默认情况下启动的模式,每一个新启动的Activity都会在栈内创建一个新的实例。例如栈内有页面CBA,当再启动一个C页面时栈内的情况会变为CBA C。
2.singleTop 再启动一个页面时,首先会去栈内的栈顶处查看栈顶是否为待启动的activity,如果是则复用,会运行newIntent方法。否则重新实例化一个对象在栈内
3.singleTask 栈内复用模式,每次启动一个activity时都会在栈内查询是否有该activity,不论在栈内的位置,进行复用,同样会调用newIntent方法。重用的activity会到栈顶。
4.singleInstance 增强版的singleTask模式,这种模式下启动的activity会在一个独立的栈内运行

名词:任务栈:TaskAffinity(任务相关性)
默认情况下所有任务栈的名字都为包名,也可以自己指定,但不能与包名相同,否则等于没有指定。主要和singleTask和allowTaskReparenting属性联合起来使用。

      <activity
            android:name=".MainActivity"
            android:label="@string/app_name"
            android:launchMode="singleTask"
            android:taskAffinity="com.tjpld.aaa">
            //代码启动方式
    Intent intent=new Intent();
    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);        
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值