学习笔记(Activity的启动模式)

Activity的启动模式(LaunchMode):

1.standrad模式,标准模式。系统默认的启动模式。直接将Activity加入启动者的任务栈。
2.singleTop模式,栈顶复用模式。如果栈内存在ABCD,再去启动一个D,栈内仍为ABCD。
3.singleTask模式,栈内复用模式,一种单实例模式。当栈内为ADBC时,以此模式启动一个D,此时BC将出栈,栈内为AD。
4.singleInstance模式,单实例模式,加强版的SingleTask。在SingleTask的基础上,一个Activity只能有一个任务栈。

TaskAffinity(任务相关性)标示了一个Activity所需要的任务栈的名字。默认情况下,所有Activity所需的任务栈的名字为应用的包名。

Activity常用的Flags:

FLAG_ACTIVITY_NEW_TASK:为Activity指定“singleTask”启动模式,其效果和在XML中指定相同。
FLAG_ACTIVITY_SINGLE_TOP:为Activity指定“singleTop”启动模式,其效果和在XML中指定相同。
FLAG_ACTIVITY_CLEAR_TOP:具有此标记位的Activity,当它启动时,在同一个任务栈中所有位于它上面的Activity都要出栈。一般和singleTask启动模式一起出现。
FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS:具有这个标记的Activity不会出现在历史Activity的列表中,当某些情况下,我们不希望用户通过历史列表回到我们的Activity的时候这个标记比较有用。它等同于在XML中指定Activity的属性android:excludeFromRecents="true"。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容