Activity 的四种 launchMode

发布于 2025-01-08 22:32:10 字数 824 浏览 3 评论 0

Activity 一共有以下四种 launchMode:

  • standard
  • singleTop
  • singleTask
  • singleInstance

我们可以在 AndroidManifest.xml 配置的 android:launchMode 属性为以上四种之一即可。 下面我们结合实例一一介绍这四种 lanchMode:

1.standard

standard 模式是默认的启动模式,不用为配置 android:launchMode 属性即可,当然也可以指定值为 standard。standard 启动模式,不管有没有已存在的实例,都生成新的实例。

2.singleTop

我们在上面的基础上为指定属性 android:launchMode="singleTop",系统就会按照 singleTop 启动模式处理跳转行为。跳转时系统会先在栈结构中寻找是否有一个 Activity 实例正位于栈顶,如果有则不再生成新的,而是直接使用。如果系统发现存在有 Activity 实例,但不是位于栈顶,重新生成一个实例。 这就是 singleTop 启动模式,如果发现有对应的 Activity 实例正位于栈顶,则重复利用,不再生成新的实例。

3.singleTask

如果发现有对应的 Activity 实例,则使此 Activity 实例之上的其他 Activity 实例统统出栈,使此 Activity 实例成为栈顶对象,显示到幕前。

4.singleInstance

这种启动模式比较特殊,因为它会启用一个新的栈结构,将 Acitvity 放置于这个新的栈结构中,并保证不再有其他 Activity 实例进入。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

风柔一江水

暂无简介

文章
评论
836 人气
更多

推荐作者

微信用户

文章 0 评论 0

小情绪

文章 0 评论 0

ゞ记忆︶ㄣ

文章 0 评论 0

笨死的猪

文章 0 评论 0

彭明超

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文