Android启动模式FLAG_ACTIVITY_CLEAR_TOP

Android启动模式FLAG_ACTIVITY_CLEAR_TOP关于这个问题,我试了一下。例:A,B,C,D四个Activity,启动模式均为默认,依次启动,在D中启动B。添加intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)效果:C会被清除出栈;然后B被finish掉,重新启动;D被销毁。重走生命周期,不会走onNewIntent()方法Intentintent=newIntent(this,TestBActivity.class);intent.setFlags(Intent.FLAG_AC

大家好,又见面了,我是你们的朋友全栈君。

关于这个问题,我试了一下。

例: A,B,C,D四个Activity,启动模式均为默认,依次启动,在D中启动B。

  1. 添加intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)

    效果:C会被清除出栈;然后B被finish掉,重新启动;D被销毁。重走生命周期,不会走onNewIntent()方法
    结果

Intent intent = new Intent(this, TestBActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
  1. intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP)
    效果:C会被清除出栈;会调用B的onNewIntent()方法,不重新启动
    Android启动模式FLAG_ACTIVITY_CLEAR_TOP
Intent intent = new Intent(this, TestBActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);
startActivity(intent);

参考:Android 启动模式FLAG_ACTIVITY_CLEAR_TOP

重新启动:


 Intent intent = new Intent(context, MainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent);
context.overridePendingTransition(0, 0);
context.finish();
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/160747.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • vim搜索及高亮取消

    vim搜索及高亮取消1.命令模式下,输入:/字符串比如搜索user,输入/user按下回车之后,可以看到vim已经把光标移动到该字符处和高亮了匹配的字符串2.查看下一个匹配,按下n(小写n)3.跳转到上一个匹配,按下N(shift+n)4.搜索后,我们打开别的文件,发现也被高亮了,怎么关闭高亮?命令模式下,输入:nohlsearch也可以:setnohlsearch;当然,可以简写,noh或者setnoh。…

    2022年9月24日
  • dos命令登陆mysql命令

    dos命令登陆mysql命令

    2021年7月17日
  • drupal安装教程mysql_Drupal(一)下载与安装

    drupal安装教程mysql_Drupal(一)下载与安装Drupal是一个使用PHP语言编写的开源内容管理系统(CMS)。然后将安装包解压到web服务器根目录下,如果你使用的是XAMPP,则解压到xampp目录下的htdocs目录。要安装Drupal,我们首先应该建立一个数据库,如在mysql中建立一个名为drupal的数据库。Drupal默认语言是英语,如果我们要创建中文站点,应该首先从http://localize.drupal.org/trans…

    2022年7月20日
  • centos7安装python 3.7_python安装后如何使用

    centos7安装python 3.7_python安装后如何使用文章目录什么是EPEL更新一下yum:安装EPEL:安装python3使用python3什么是EPELRHEL以及他的衍生发行版如CentOS、ScientificLinux为了稳定,官方的rpmrepository提供的rpm包往往是很滞后的,当然了,这样做这是无可厚非的,毕竟这是服务器版本,安全稳定是重点,官方的rpmrepository提供的rpm包也不够丰富,很多时候需要自己编译那太辛苦了,而EPEL恰恰可以解决这两方面的问题。什么是EPEL?EPEL的全称叫ExtraPackag

    2022年9月25日
  • PyQuery库[通俗易懂]

    PyQuery库[通俗易懂]PyQuery库PyQuery库也是一个非常强大又灵活的网页解析库,PyQuery是Python仿照jQuery的严格实现。语法与jQuery几乎完全相同,所以不用再去费心去记一些奇怪的方法了。1、初始化初始化的时候一般有三种传入方式:传入字符串,传入url,传入文件字符串初始化eg1:html=”'<div><ul>…

    2022年6月11日
  • 递归

    递归递归

    2022年4月24日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号