0

所以这里的问题,

我正在使用带有四个选项卡的 fragmenttabhost,Tab A(FragA)、Tab B(FragB)、Tab C、Tab D

当我使用 Tab B 并执行片段事务以将 Tab B(FragB)上的片段替换为另一个片段(FragB_2)时,它被添加到后退堆栈中,因此我仍然可以使用后退按钮导航回来。但是当在选项卡 B 新片段时,我单击选项卡 A、选项卡 C、选项卡 D。然后当我返回选项卡 B 时,选项卡将显示新片段(FragB_2),当我按下后退按钮时。 . 没有片段显示。

每当我更改标签时,我都会尝试删除后台堆栈。ETC

if (fm.getBackStackEntryCount() > 0) 
{
    Log.i("MainActivity", "popping backstack");

        fm.popBackStack();
}

此代码从 TabB 中删除了 Fragment B_2,但每当我再次返回 Tab B 时,Fragment B 就消失了。

我该如何绕过它?

4

0 回答 0