首页 > 其他分享 >android Intent的FLAG_ACTIVITY_CLEAR_TOP和FLAG_ACTIVITY_REORDER_TO_FRONT

android Intent的FLAG_ACTIVITY_CLEAR_TOP和FLAG_ACTIVITY_REORDER_TO_FRONT

时间:2023-03-22 10:01:51浏览次数:52  
标签:CLEAR ACTIVITY FLAG Intent Activity intent TOP


ctivity的两种启动模式:FLAG_ACTIVITY_CLEAR_TOP和FLAG_ACTIVITY_REORDER_TO_FRONT

1. 如果已经启动了四个Activity:A,B,C和D。在D Activity里,我们要跳到B Activity,同时希望C finish掉,可以在startActivity(intent)里的intent里添加flags标记,如下所示:

Intent intent = new Intent(this, B.class);   
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);



这样启动B Activity,就会把D,C都finished掉,如果你的B Activity的启动模式是默认的(multiple) ,则B Activity会finished掉,再启动一个新的Activity B。


如果不想重新再创建一个新的B Activity,则在上面的代码里再加上:


intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);


这样B Activity就会再创建一个新的了,而是会重用之前的B Activity,同时调用B Activity的onNewIntent()方法。



2. 如果已经启动了四个Activity:A,B,C和D,在D Activity里,想再启动一个Actvity B,但不变成A,B,C,D,B,而是希望是A,C,D,B,则可以像下面写代码:


Intent intent = new Intent(this, MainActivity.class);  
intent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
startActivity(intent);

标签:CLEAR,ACTIVITY,FLAG,Intent,Activity,intent,TOP
From: https://blog.51cto.com/u_15955464/6142095

相关文章

  • android 只起一个Activity实例
    在一个Activity中,多次调用startActivity()来启动另一个Activity,要想只生成一个Activity实例,方法有两种。[b]方法一:设置起动模式[/b]一个Activity......
  • The Art of ChatGPT Prompting: A Guide to Crafting Clear and Effective Prompts
    AboutWhenChatGPTfirstlaunchedlastmonth,Iwasimmediatelycaptivatedbyitscapabilities.Iexperimentedwiththetoolinavarietyofwaysandwascons......
  • Error in invoking target 'mkldflags ntcontab.o nnfgt.o' of makefile
     安装数据库报错:./runInstaller-silent-force-ignorePrereq-showProgress-responseFile/u01/software/database/response/my_db_install.rspErrorininvokingt......
  • go语言学习-标准库flag和log
    Go语言内置的flag包实现了命令行参数的解析,flag包使得开发命令行工具更为简单。os.Args获取命令行参数个数packagemainimport("fmt""os")//os.Args//获取命令行参......
  • 【framework】Activity启动流程
    1前言ATMS启动流程介绍了ActivityTaskManagerService(ATMS)的启动和初始化流程,本文将介绍Activity的启动流程。由于Activity启动流程复杂,本文按进程将其拆分为3......
  • BUUCTF-MISC-面具下的flag()
    准备工作下载附件得到一个一张图片丢入winhex,发现还有一个flag.vmdk文件vmdk文件其实是虚拟机使用的硬盘文件打开kalibinwalk-emianju.jpg关键步骤这里如果在......
  • activity-程序活动单元
    Activity介绍activity是一个与用户交互的控件,主要来显示界面以及处理界面上一些控件的事件。Activity的生命周期启动,运行,暂停,停止,销毁生命周期方法oncreated:创建时......
  • 关于onActivityResult( ) 方法的使用
    关于onActivityResult()方法的使用使用场景:AActivity跳转到BActivity,按下返回键,将BActivity的部分数据带给AActivity注释:相当于,AActivity请求BActivity里的......
  • golang的命令行参数os.Args和flag
    os.Args是一个string的切片,用来存储所有的命令行参数1.基本使用packagemainimport("fmt""os")funcmain(){fmt.Println("命令行的参数有",len(......
  • 清除浮动 - 使用 clear
    清除浮动-使用clear元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用clear属性。clear属性指定元素两侧不能出现浮动元素。使用clear属性往文本中添加图......