Activity启动模式intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
2017-05-08 14:17
489 查看
Activity启动模式,setFlags() ;然后Intent 使用情况,
《1》如果有三个Activity 之间的跳转,或者更多的跳转,a —>b —-> c 然后 c再回到a;
在AndroidManifest.xml 设置android:launchMode=”singleTask” ,我们想关闭掉 b ,
可以在 startActivity 里的intent 添加flags标识标记。如:
Intent intent=new Intent(this,a.class );
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
但是这里的一个缺点是,a 类从新创建了,前面跳转的activity的活动都finish(),没有复用之前的 a 类 。也是优点。
《2》在 a 跳转到 b 再跳转到 c 最后跳转回 a 。然后复用 a 之前创建。
那么这样写;只是改变标识 flags();
一样在在AndroidManifest.xml 设置android:launchMode=”singleTask”
Intent intent=new Intent(this,a.class );
intent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
startActivity(intent);
O(∩_∩)O哈哈~
当然了,还有其他启动模式的设置。
有时候 launchMode 设置模式不能够完成,那么可以加 setFlags 组合完成。
收工,大工告成。
《1》如果有三个Activity 之间的跳转,或者更多的跳转,a —>b —-> c 然后 c再回到a;
在AndroidManifest.xml 设置android:launchMode=”singleTask” ,我们想关闭掉 b ,
可以在 startActivity 里的intent 添加flags标识标记。如:
Intent intent=new Intent(this,a.class );
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
但是这里的一个缺点是,a 类从新创建了,前面跳转的activity的活动都finish(),没有复用之前的 a 类 。也是优点。
《2》在 a 跳转到 b 再跳转到 c 最后跳转回 a 。然后复用 a 之前创建。
那么这样写;只是改变标识 flags();
一样在在AndroidManifest.xml 设置android:launchMode=”singleTask”
Intent intent=new Intent(this,a.class );
intent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
startActivity(intent);
O(∩_∩)O哈哈~
当然了,还有其他启动模式的设置。
有时候 launchMode 设置模式不能够完成,那么可以加 setFlags 组合完成。
收工,大工告成。
相关文章推荐
- intent 启动模式(FLAG_ACTIVITY_CLEAR_TOP和FLAG_ACTIVITY_REORDER_TO_FRONT)
- Activity的启动模式:FLAG_ACTIVITY_CLEAR_TOP和FLAG_ACTIVITY_REORDER_TO_FRONT
- ActivityGroup相关--getLocalActivityManager() 以及intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)用法
- ActivityGroup相关--getLocalActivityManager() 以及intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)用法
- ActivityGroup相关--getLocalActivityManager() 以及intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)用法
- Activity启动模式之FLAG_ACTIVITY_CLEAR_TOP
- ActivityGroup相关--getLocalActivityManager() 以及intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)用法
- activity启动模式应用,如FLAG_ACTIVITY_CLEAR_TOP
- Activity的启动模式:FLAG_ACTIVITY_CLEAR_TOP和FLAG_ACTIVITY_REORDER_TO_FRONT
- 用Intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)退出多个Activity的程序
- ActivityGroup相关--getLocalActivityManager() 以及intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)用法
- Android 启动模式之 FLAG_ACTIVITY_CLEAR_TOP
- intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)用法
- 自学笔记:Activity的启动模式:FLAG_ACTIVITY_CLEAR_TOP和FLAG_ACTIVITY_REORDER_TO_FRONT
- ActivityGroup相关--getLocalActivityManager() 以及intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)用法
- Activity的两种启动模式:FLAG_ACTIVITY_CLEAR_TOP和FLAG_ACTIVITY_REORDER_TO_FRONT
- intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP|Intent.FLAG_ACTIVITY_NEW_TASK);
- ActivityGroup相关--getLocalActivityManager() 以及intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)用法
- Activity的两种启动模式:FLAG_ACTIVITY_CLEAR_TOP和FLAG_ACTIVITY_REORDER_TO_FRONT
- ActivityGroup相关--getLocalActivityManager() 以及intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)用法