Android--活动的启动模式

博客介绍了Android活动的启动模式,包括standard、singleTop、singleTask和singleInstance,说明了各模式特点,如standard每次启动创建新实例,singleTop栈顶已有则直接使用等。还给出小例子,提及活动回收数据丢失的处理,以及判断当前活动和随时随地退出程序的方法,最后提到启动活动的最佳写法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.standard(默认的)
在这里插入图片描述
在这里插入图片描述
每次启动时创建新的实例,退出活动需要返回三次。
在这里插入图片描述

2.singleTop
启动活动时,如果返回栈的栈顶已经是该活动,直接使用它,不再创建新的实例。退出活动需要返回三次。
在这里插入图片描述
小例子:
新建一个FirstActivity和SecondActivity,点击FirstActivity中的按钮,打开SecondActivity,点击SecondActivity的按钮打开FirstActivity。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3.singleTask
每次启动活动时系统首先在返回栈中检查是否存在该活动的实例,如果没有发现就会创建一个新的活动实例。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
4.singleInstance
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
打破了每个App一个栈的常规,而是新建一个栈,用到哪个App的活动就将哪个活动剪切过来。

活动被回收了,临时数据丢失了,怎么办??
在这里插入图片描述
在这里插入图片描述

判断当前活动是哪一个活动
新建一个java类,命名为BaseActivity,让他继承AppCompatActivity,并重写onCrate方法,在其中添加如下代码:
在这里插入图片描述
修改FirstActivity,SecondActivity,ThirdActivity,让他们继承自BaseActivity,运行就能看到当前活动是哪个活动了。
在这里插入图片描述
随时随地退出程序
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
启动活动的最佳写法
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

叮叮当当0543

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值