当前位置:  开发笔记 > 编程语言 > 正文

特定活动打开后销毁所有以前的活动

如何解决《特定活动打开后销毁所有以前的活动》经验,为你挑选了1个好方法。

这就是场景

Activity A- > Activity B- > Activity C- > Activity D(我想在Activity D启动 后销毁活动A,B和C.

有什么想法吗?



1> Bhargav Than..:
Intent intent = new Intent(ActivityC.this, ActivityD.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
startActivity(intent);
ActivityC.this.finish();

FLAG_ACTIVITY_NEW_TASK

如果设置,此活动将成为此历史堆栈上新任务的开始.任务(从启动它的活动到下一个任务活动)定义用户可以移动到的原子活动组.任务可以移动到前台和后台; 特定任务内的所有活动始终保持相同的顺序.有关任务的更多信息,请参阅任务和后台堆栈.

此标志通常由想要呈现"启动器"样式行为的活动使用:它们为用户提供可以完成的单独事物的列表,否则完全独立于启动它们的活动.

使用此标志时,如果任务已在您正在启动的活动上运行,则不会启动新活动; 相反,当前任务将简单地以其最后一个状态被带到屏幕的前面.请参阅FLAG_ACTIVITY_MULTIPLE_TASK以获取禁用此行为的标志.

当调用者从正在启动的活动请求结果时,不能使用此标志.

FLAG_ACTIVITY_CLEAR_TASK

如果在传递给Context.startActivity()的Intent中设置,则此标志将导致在活动开始之前清除与活动关联的任何现有任务.也就是说,活动成为否则为空任务的新根,并且任何旧活动都已完成.这只能与FLAG_ACTIVITY_NEW_TASK一起使用.

推荐阅读
勤奋的瞌睡猪_715
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有