Android 使用FragmentTabHost时处理fragmenttransaction

Android 使用FragmentTabHost时处理fragmenttransaction,android,android-fragments,tabs,fragment-tab-host,fragmenttransaction,Android,Android Fragments,Tabs,Fragment Tab Host,Fragmenttransaction,问题就在这里 我使用的fragmenttabhost有四个选项卡,选项卡A(FragA),选项卡B(FragB),选项卡C,选项卡D 当我使用选项卡B并执行片段事务以将选项卡B上的片段(FragB)替换为另一个片段(FragB_2)时,它被添加到后堆栈中,因此我仍然可以使用“后退”按钮返回。但是当在选项卡B新建片段时,我单击选项卡A、选项卡C、选项卡D。然后当我返回选项卡B时,选项卡将显示新片段(FragB_2),当我按下后退按钮时。。没有显示任何片段 每当我换标签的时候,我都会试着去掉背衬。等

问题就在这里

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

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

每当我换标签的时候,我都会试着去掉背衬。等

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

        fm.popBackStack();
}
这段代码从TabB中删除了片段B_2,但是每当我再次返回到Tab B时,片段B就消失了


如何绕过它?

所以当您在一个选项卡上,然后转到另一个选项卡上,然后按back键时,您希望它不会返回到以前的活动?当我在选项卡B上时,我有一个片段事务来将片段(Frag a)替换为另一个片段(Frag B)。然后当我转到选项卡A,然后我再次回到选项卡B,碎片仍然是碎片B,我希望它是碎片A-