Activity的启动模式

      Android是使用Task管理应用中的Activity的。

      Activity启动模式有4种:standard(标准启动模式)、singleTop(单一顶部模式)、singleTask(单一任务模式)、singleInstance(单一实例模式)。

      启动模式是相对于一个Activity而言的

一、standard(标准启动模式)

      1、Activity的默认启动模式

      2、当Activity的启动模式设置为该模式时,启动一个Android应用时,系统会为该应用创建一个任务栈,用来管理本应用的Activity,使用startActivity()新打开一个Activity时,系统会把新打开的应用依次压入栈中,当点击返回键时,系统会以出栈的方式,一一展现出压入栈中的Activity,直到应用退出。

二、singleTop(单一顶部模式)

      当Activity的启动模式设置为singleTop时,在应用中启动该Activity时,系统会将该Activity压入到栈顶,如果再次打开该Activity时,系统将不会再次创建该Activity,如果打开的是另外的Activity时,系统会创建Activity,并压入栈中,(只要打开的Activity,不在栈的栈顶时,都会创建Activity并压入栈顶中,如果在栈顶,则不会创建新的Activity,而是会重用)

    如果在应用中连续打开该Activity时,点击返回按钮时只需点击一次,就可返回该Activity前面的Activity。

三、singleTask(单一任务模式)

    只要打开的Activity,不在栈内,都会创建Activity并压入栈中,如果打开的Activity在栈中,则系统会将该Activity第一次出现的位置之后的所有Activity都销毁,让自己在栈中唯一,且在栈顶。如果该Activity就在栈顶,再次打开该Activity时,情况和singleTop模式一样。

    如果在应用中打开过两次该Activity,点击返回键一次就可以返回到该Activity第一次出现位置的前一个Activity中

四、singleInstance(单一实例模式)

   当Activity的启动模式设置为它时,在应用中打开该Activity时,系统会新创建一个任务栈,将该Activity压入栈中,且该栈中只有该Activity,

    在该模式下,系统会创建两个栈,一个栈在前一个栈在后,如果在前面的栈是装普通的Activtity,后边的栈是装该Activity时,点击返回键时,系统会将该栈中的所有Activity退出之后,才会展现该Activity。如果装该Activity的栈在前面,则点击返回键时,先退出该Activity,退出该栈,再退出普通Acvitity。


说的是乱七八糟的,不过自己理解了。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值