Android 在配置更改时保留相同的片段实例

Android 在配置更改时保留相同的片段实例,android,android-fragments,onconfigurationchanged,Android,Android Fragments,Onconfigurationchanged,我有以下问题。我的应用程序有2个片段,第一个执行的片段显示项目列表,当你点击一个项目时,显示一个细节片段。 我还有一个NavigationDrawerActivity,使用以下方法来处理片段堆栈 private void changeFragment(int pos, Fragment fragment, boolean addToBackStack) { Fragment f = getSupportFragmentManager().findFragmentByTag

我有以下问题。我的应用程序有2个片段,第一个执行的片段显示项目列表,当你点击一个项目时,显示一个细节片段。 我还有一个NavigationDrawerActivity,使用以下方法来处理片段堆栈

  private void changeFragment(int pos, Fragment fragment, boolean addToBackStack) {


        Fragment f = getSupportFragmentManager().findFragmentByTag(String.valueOf(pos));
        FragmentManager fragmentManager = getSupportFragmentManager();
        FragmentTransaction ft = fragmentManager.beginTransaction();
        mCacheServices.setmFragmentTag(String.valueOf(pos));
        ft.replace(R.id.container, fragment, String.valueOf(pos));

        if ((addToBackStack)) {
            ft.addToBackStack(STACK_KEY);
        }
        ft.commit();

}
我面临的问题是,当我在DetailFragment中时,我编写了设备,它会转到ItemList片段,这是应用程序执行的第一个片段。旋转设备时,我可以对DetailFragment上的mantain执行什么操作


谢谢

您可以保存片段的状态,然后重新创建它。请仔细阅读此文档以了解更多详细信息


希望这能有所帮助。

我尝试使用setRetainInstancetrue;但是无论如何都会调用changeFragment方法,并且它会在清单上为片段所在的抽屉活动设置itemlist片段,其中添加了android:configChanges=orientation | screenSize。这种做法行吗?