我对此感到非常困惑。我有一个actionbar
列表导航。我点击列表依次打开2fragment
个并显示在同一个活动中。我基本上是用这种方法替换它们:
public void openFragment(AprilAppsFragment createdFragment){
if (createdFragment.getClass().isInstance(getDisplayedFragment()))
return;
FragmentManager manager = getSupportFragmentManager();
FragmentTransaction transaction = manager.beginTransaction();
transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
transaction.replace( R.id.main_fragment, createdFragment, "displayed fragment");
transaction.addToBackStack(null);
transaction.commit();
}
我打开片段A,然后打开片段B,然后旋转屏幕。正在重新创建片段A ,使我的应用程序崩溃
为什么会这样,因为我正在使用替换?如何避免重新创建不再显示的片段,而不会失去对它们进行反压的可能性?