Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/178.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 Fragments - Fatal编程技术网

android的后台处理

android的后台处理,android,android-fragments,Android,Android Fragments,目前,我有一个这样的片段堆栈 F1->F2->F3->F4->F5 在活动中,我有五个按钮B1、B2、B3、B4和B5。 我的问题是,当我在活动中按下B1按钮时,如何更新片段堆栈,如下所示 F2->F3->F4->F5->F1。问题不清楚,但我假设您的意思是希望弹出F5、F4、F3和F2,因此您返回F1。假设它们都添加到some容器视图(而不是子片段),您可以使用FragmentManager.popBackStack(“F1”,0)。这还假设在添加片段时,您已经为片段使用了String标记。如

目前,我有一个这样的片段堆栈

F1->F2->F3->F4->F5

在活动中,我有五个按钮B1、B2、B3、B4和B5。

我的问题是,当我在活动中按下B1按钮时,如何更新片段堆栈,如下所示


F2->F3->F4->F5->F1。

问题不清楚,但我假设您的意思是希望弹出F5、F4、F3和F2,因此您返回F1。假设它们都添加到some容器视图(而不是子片段),您可以使用
FragmentManager.popBackStack(“F1”,0)
。这还假设在添加片段时,您已经为片段使用了
String
标记。如果您使用的是
int
ID,那么请使用该API的版本,该版本采用希望结束的
片段的
int
ID。

添加到后堆栈时,我使用了字符串标记。我使用了FragmentManager.popBackStack(“F1”,0),但它并没有达到我想要的效果。谢谢你的回复。现在您可以看到我的问题B1、B2、B3、B4和B5是活动中的按钮。按钮的细节并不能真正帮助解释你想要什么。您是否试图从片段后堆栈的“底部”移除F1并将其移动到“前部”?是的,完全正确。你知道怎么做吗?那更具挑战性。您可以尝试删除F1片段,然后将F5替换为F1,作为推送到后堆栈的事务。您最好自己管理碎片,同时挂起“后”触发器。