Android 关闭当前片段并打开上一个片段

Android 关闭当前片段并打开上一个片段,android,android-fragments,back-stack,Android,Android Fragments,Back Stack,假设我的主要活动中有一个框架布局和两个片段, 现在显示第一个片段,我将其替换为secondFragment并将第一个片段添加到后堆栈中,现在secondFragment中满足了一些条件,所以我想关闭第二个片段并打开第一个片段(基本上是从后堆栈返回),而无需按下后退按钮。如何实现这一点?您可以编写以下代码来从backbackback中删除当前片段: getActivity().getSupportFragmentManager().popBackStack(); 这将用堆栈片段替换当前片段(在f

假设我的主要活动中有一个框架布局和两个片段,
现在显示第一个片段,我将其替换为secondFragment并将第一个片段添加到后堆栈中,现在secondFragment中满足了一些条件,所以我想关闭第二个片段并打开第一个片段(基本上是从后堆栈返回),而无需按下后退按钮。如何实现这一点?

您可以编写以下代码来从backbackback中删除当前片段:

getActivity().getSupportFragmentManager().popBackStack();

这将用堆栈片段替换当前片段(在framelayout中)?是的,如果在后堆栈中添加片段,则可以使用此代码切换回前一个片段。另外,请注意,如果您在更改片段时使用“替换”,则在弹出堆栈时再次调用onCreateView,但如果您使用“添加”,则切换回上一个片段时将保留上一个状态。“但如果您使用“添加”,切换回上一个片段时将保留上一个状态。”但是当我用“添加”代替“替换”时,片段1保持不变,而片段2重叠。是的,你是对的,如果你不需要片段重叠或保持其状态,你应该使用“替换”。我想保持状态,但我不希望它重叠。可能吗?