Android的四种启动模式

Android共有四种启动模式。

要改变启动模式,只需要在AndroidManifest.xml文件中配置一下即可
这里写图片描述
根据不同的需求,使用不同的启动模式,下面就详解一下这4中启动模式。

1、standard
也是默认的启动模式,不写启动模式的话,就会自动使用这一模式。在这个模式下,每次跳转都是创建一个新的实例,相同的Activity也会再次创建一个实例,每次创建新的实例都是放到同一个栈中。
比如说,现在有一个FirstActivity,里面有个按钮,让它再次跳转到FirstActivity,多点几次。然后点击返回,他会一个一个的进行返回操作。就像是一个无盖的盒子,点击一次放进去一个东西,再点击一次,又把新(也可能是同一个)东西放在以前的东西上面,一层层的摞起来,当你要取出来东西的时候,当然要自上而下的取出来。standard就是这个道理。

2、singleTop
在这个模式下,FirstActivity中一个按钮跳转到FirstActivity,这时,不管你点击多少次按钮,它就只会建立一个实例,因为都是相同的Activity,这个Activity一直都在栈顶,他不会再重新建一个实例,点击一次返回直接退出。那我们想一想,如果让FirstActivity-SecondActivity-FirstActivity,这样就和standard一样了,因为栈顶一直都在变。

3、singleTask
此模式非常绝情,当我们要创建FirstActivity的实例的时候,他会查询栈中是否有相同的实例,如果有,在栈顶,那和singleTop一样,不在栈顶,把FirstActivity的实例上面的直接销毁,让FirstActivity作栈顶。相同的实例不会再创建第二次。

4、singleInstance
此模式那就更加强势了。当加载FirstActivity的时候,如果有,直接用;如果没有,创建一个Task,把自己实例化了放进去。然后它只允许它自己在这个栈中。如果现在想加载SecondActivity,它会再创建一个Task,实例化后放进去。如果想再加载FirstActivity,就直接调用之前创建的那个。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值