Activity四大启动模式 简单介绍

启动模式

启动模式用好可以避免重复创建相同的Activity,合理节省空间。当点击跳转Activity时,需要创建一个新的实例,并把它存入任务栈内;多次创建,多次添加,一层一层累加。任务栈是后进先出,点击返回先退出刚才点击进入的Activity,按照顺序依次退出。直到任务栈内没有Activity,会回收这个任务栈。

Standard

系统默认启动模式,每次点击跳转Activity,都会创建一个新的Activity,即使存在也会重新创建。点击返回键,会按照点击顺序依次退出Activity

SingleTop

栈顶复用模式:此Activity已经存在任务栈并且在栈顶,再次点击不会创建,会调用的是它的 onNewInstance() 方法,通过此方法获取请求数据。假如不在栈顶,会再次创建

SingleTask

栈内复用模式:单实例模式。创建Activity之前,会在栈内查找是否存在这个实例,存在的话会重新启动,并将它上面的Activity全部出栈,调用 onNewInstance() ;不存在则创建。

SingleInstance

单实例模式:唯一性,栈内复用。具备SingleTask全部特性,该模式创建的Activity只能存在一个任务栈内,启动相同的Activity,会先在任务栈内查找,并调用前台,不会重复创建

启动方式

清单文件设置
在这里插入图片描述
Intent设置
在这里插入图片描述
第二个优先级高于第一个,两个都存在时,以第二个为准。
清单文件无法设置 FLAG_ACTIVITY_CLEAR_TOP;Intent无法设置 SingleInstance 。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值