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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 二维数组简介与使用方法_二维数组怎么写

    二维数组简介与使用方法_二维数组怎么写前言本文将探讨一下关于二维数组在内存中的存储和二维数组在参数传递时的使用。一、二维数组在内存中的存储如果定义一个这样的二维数组inta[3][4]={{1,3,5,7},{9,11,13,15},{

    2022年8月4日
    6
  • Spring加载resource时classpath*:与classpath:的区别

    Spring加载resource时classpath*:与classpath:的区别Spring 可以通过指定 classpath 与 classpath 前缀加路径的方式从 classpath 加载文件 如 bean 的定义文件 classpath 的出现是为了从多个 jar 文件中加载相同的文件 classpath 只能加载找到的第一个文件 比如 resource1 jar 中的 package com test rs 有一个 jarAppcontex xml 文件 内容如下

    2025年5月21日
    8
  • tabnine激活码【注册码】

    tabnine激活码【注册码】,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月20日
    52
  • js原生、jquery单选框radio总结(获取值、设置默认选中值、样式)

    js原生、jquery单选框radio总结(获取值、设置默认选中值、样式)单选框radio<divclass="radio-inline"><inputtype="radio"name="killOrder"value="1"/><labelfor="killOrder1">是</label></div>&

    2022年5月30日
    228
  • 如何将ER图转化为关系模型(超详细、含例题)「建议收藏」

    如何将ER图转化为关系模型(超详细、含例题)「建议收藏」本文转载自:http://blog.csdn.net/HaoDaWang/article/details/78098937?locationNum=4&fps=1超级感谢博主分享本篇博文中的例题只涉及到N:M和N:M:P的转换,大家看完后可以再去看下百度文库里面的这个例题,这个例题几个转换准则都用到了。https://wenku.baidu.com/view/33849a73a…

    2022年9月22日
    1
  • win7-字符集-乱码问题

    win7-字符集-乱码问题win7显示中文乱码怎么办?   Unicode是一种在计算机上使用的字符编码。它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。但由于不同国家和地区采用的字符集不一致,很可能出现无法正常显示所有字符的情况,那么非Unicode选项作用就是在遇到这种情况时,把非Unicode编码字符按照你选择的语言进行显示(百度知道)。…

    2022年6月3日
    40

发表回复

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

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