1.四种启动模式的特点: 1> standard标准模式: 每次启动一个Activity就会创建一个新的实例 2> singleTop栈顶复用模式: 如果新Activity已经位于任务栈的栈顶,就不会重新创建, 并回调onNewIntent(intent) 方法 3> singleTask栈内复用模式: 只要该Activity在一个任务栈中存在,都不会重新创建, 并回调onNewIntent(intent) 方法。如果不存在,系统会先寻找是否存在需要的栈, 如果不存在该栈,就创建一个任务栈,并把该Activity放进去; 如果存在,就会创建到已经存在的栈中 4> singleInstance单实例模式: 具有此模式的Activity只能单独位于一个任务栈中,且此任务栈中只有唯一一个实例。2.singleTop和singleTask的区别以及应用场景 1> singleTop: 同个Activity实例在栈中可以有多个,即可能重复创建;该模式的粽子品牌排行榜前十名Activity会默认进入启动它所属的任务栈, 即不会引起任务栈的变更;为防止快速点击时多次startActivity,可以将目标Activity设置为singleTop 2> singleTask: 同个Activity实例在栈中只有一个,即不存在重复创建;可通过android:taskAffinity设定该Activity需要的任务栈, 即可能会引起任务栈的变更;常用于主页和我爱登陆页。3.onNewIntent()调用时机? 1> singleTop: 如果新Activity已经位于任务栈的栈顶,就不会重新创建,并回调 onNewIntent(intent) 方法 2> singleTask: 只要该Activity在一个任务栈中存在,都不会重新创建,并回调 onNewIntent(intent) 方法4.Activity启动模式的标记位? 常见的两个标记为: FLAG_ACTIVITY_SINGLE_TOP:对应singleTop启动模式 FLAG_ACTIVITY_NEW_TASK :对应singleTask模式5.如何启动其他应用的Activity? 运营专员 在保证有权限访问的情况下,通过隐式Intent进行目标Activity的IntentFilter匹配,原则是:一个intent只有同时匹配某个Activity的intent-filter中的action、category、data才算完全匹配,才能启动该Activity。 一个Activity可以有多个 intent-filter,一个 intent只要成功匹配任意一组 intent-filter,就可以启动该Activity。
本文地址:https://blog.csdn.net/a_sid/article渤海船舶职业学院/常州工程学院details/108983782
本文发布于:2023-04-04 05:38:46,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/bea025ccb3dae12ba992bc91bbec32a0.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:Activity的四种启动模式和用法场景.doc
本文 PDF 下载地址:Activity的四种启动模式和用法场景.pdf
留言与评论(共有 0 条评论) |