Activity四种启动模式的应用场景

Activity四种启动模式的应用场景

一、栈顶复用模式:
singleTop常用场景:(打开同类型的页面)
①某易云课堂APP,经常会收到多个通知,点开其中一个,开始播放视频,看完了点开第二个通知,会直接在原来界面上刷新第二个通知里的视频,
从而出现打开动作,这种对用户体验良好的界面播放形式就是采用了singleTop启动模式;
②某日头条新闻app,和通知相关的操作也是一样;
③便签/小说APP的设置界面,比如第一次设置好了字体大小,然后开始写作/阅读,觉得不行,字体还是太小了,第二次打开设置,去把字体改大。
这个时候设置界面的启动模式就是singleTop了,因为这个操作一般来说是不频繁的,就算没有实例也可以重新创建,用其他启动方式反而是不合适的。
singletop应用:避免多次创建,比如点击一个按钮启动一个activity,如果快速点击多次会导致反复启动,一种办法是在点击事件里过滤,另一个办法是设置目标activity是singletop

二、栈内复用模式:
SingleTask启动模式应用:
①浏览器首页Activity,整个任务栈只有一个实例,节约了内存;
②购物APP宝贝展示界面01,界面02确认订单,界面03付款,如果付款成功会自动跳到界面01,如果付款失败则返回界面02,这个时候重启01就是用的singleTask启动模式。
③使用多的Activity,比如首界面HomeActivity,假设用户在主页跳转到其他页面,运行多次操作后想返回到主页,假设不使用SingleTask模式,在点击返回的过程中会多次看到主页,这明显就是设计不合理了

三、单实例模式
SingleInstance
①手机拨号界面(QQ、短信这种涉及数字的都会用到手机拨号界面)
②社交APP分享页面(微信、QQ、知乎)
——作为外部App调用自己客户端程序的入口的Activity都会采用singleInstance启动模式
③第一次启动时一个activity让用户填资料,填完后转到主activity,此时按后退,不再退回前一个activity

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值