片段内的片段导致屏幕旋转后丢失片段

时间:2016-05-26 13:47:35

标签: android android-fragments

我在fragment中使用fragment,当我旋转屏幕时,我无法findFragmentByTag()

 if (savedInstanceState == null) {
        showNewsListFragment();
 } else {
        mFragment = getChildFragmentManager().findFragmentByTag(FRAGMENT_TAG); // null here
 }

此代码用于将片段添加到片段:

FragmentManager fragmentManager = getChildFragmentManager();
try {
     fragmentManager.beginTransaction().
       replace(R.id.container, mFragment, FRAGMENT_TAG).show(mFragment).commitAllowingStateLoss();
} catch (Exception e) {
     e.printStackTrace();
}

当我尝试按标签查找片段时,我得到null。我的片段在哪里?

1 个答案:

答案 0 :(得分:3)

尝试覆盖片段类中的onCreate()方法 并致电

setRetainInstance(true);

以便在旋转屏幕时保持片段的状态