Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/213.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 安卓:我该怎么做;跳转到另一个分支“;在“活动后台堆栈”中;树;?_Android_Android Activity_Back Stack - Fatal编程技术网

Android 安卓:我该怎么做;跳转到另一个分支“;在“活动后台堆栈”中;树;?

Android 安卓:我该怎么做;跳转到另一个分支“;在“活动后台堆栈”中;树;?,android,android-activity,back-stack,Android,Android Activity,Back Stack,假设我有一个这样的堆栈:a->B->C->D->E,E中有一个动作,弹出E,D,C,启动F,这样我就得到了a->B->F 我如何构建这样一个后台堆栈?我可以使用startActivity B和FLAG_ACTIVITY_CLEAR_TOP,然后是startActivity F吗?第一个明星在加入F之前会不会先关闭E?例如,我如何让A->B->C和C中的一个动作将其更改为A->D->E?我可以将PendingEvent与TaskStackBuilder一起使用吗 提前谢谢!(顺便说一句,这是我的第

假设我有一个这样的堆栈:a->B->C->D->E,E中有一个动作,弹出E,D,C,启动F,这样我就得到了a->B->F

我如何构建这样一个后台堆栈?我可以使用startActivity B和FLAG_ACTIVITY_CLEAR_TOP,然后是startActivity F吗?第一个明星在加入F之前会不会先关闭E?例如,我如何让A->B->C和C中的一个动作将其更改为A->D->E?我可以将PendingEvent与TaskStackBuilder一起使用吗


提前谢谢!(顺便说一句,这是我的第一个问题!)

要将堆栈清除回
B
,然后启动
F
,请执行以下操作:

Intent intent = new Intent(this, B.class);
intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.putExtra("startF", true);
startActivity(intent);
B.onNewIntent()中执行以下操作:

if (intent.hasExtra("startF") {
    Intent startF = new Intent(this, F.class);
    startActivity(startF);
}

你可以到处使用这个概念回到堆栈中的某个活动,告诉该活动要启动什么新活动。

哦,我明白了。谢谢你的回复!