首先,我使用replace方法向back stack添加片段,然后我发现当我按下back键时,stack中的片段将再次调用onCreateView,我在api演示中也发现了这种行为,所以我认为这不是一个bug,但我希望在
按back键前一个活动将不会调用onCreate方法。
后来我发现fragmentManager.add()可以实现我的想法,但是另一个问题出现了,当添加第二个片段时,前一个片段仍然可见。
有人能帮我吗?

FragmentManager manager = getSupportFragmentManager();
        FragmentTransaction transaction2 = manager.beginTransaction();
        transaction2.add(R.id.fl, f2);
        transaction2.addToBackStack("Fragment2");
        transaction2.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
        transaction2.commit();

最佳答案

尝试使用“替换”而不是“添加”
部分代码
fragmenttransaction.replace(R.id.realtabcontent, Fragment);fragmenttransaction.commit();

09-15 22:45