将特定活动作为堆栈中的根活动

我有一套活动在我的堆栈说A – > B – > C。 当我启动名为“D”的活动时,它应该被解雇为我的应用程序的根活动,并且所有其他活动(A,B,C)都应该在活动D启动后从我的堆栈中清除。可以有人告诉我这个怎么做

Solutions Collecting From Web of "将特定活动作为堆栈中的根活动"

如果你通过这个文档http://developer.android.com/reference/android/content/Intent.html ,你可以看到各种意图标志及其用途。

具体而言,对于您的问题,必须使用FLAG_ACTIVITY_CLEAR_TASK ,它将清除在活动开始之前将与活动关联的任何现有任务,即活动成为空的任务的新根 ,并且完成所有旧活动。

设置根活动

Intent intent = new Intent(this, DActivity.class); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK); startActivity(intent);