android studio for android learning (二十五 )activity的启动模式详解与标志位简析

1.activity的存储——任务栈也称task栈。

任务栈是一种”后进先出”的栈结构,当我们多次启动同一个Activity的时候,系统会创建多个实例并把它们放入任务栈中,每一次back就会有一个Activity出栈,直到栈空为止,当栈中无任何Activity的时候,系统就会回收这个任务栈。

2.四种启动模式的定义

A. standard:标准模式

模式启动模式,每次激活Activity时都会创建Activity,并放入任务栈中。

一个任务栈中可以有多个实例,每个实例也可以属于不同的任务栈。当我们用ApplicationContext启动一个standard模式的Activity,会报AndroidRuntimeException错误,因为standard模式的Activity默认会进入启动它的Activity所属的任务栈中,但由于非Activity的Context并没有所谓的任务栈,所以报错。解决方案添加FLAG_ACTIVITY_NEW_TASK标记位,为它创建一个新的任务栈,实际上是以singleTask

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值