我正在开发一个基本上具有 ActionBar 的应用程序。当我的应用程序启动时,Activity 会创建片段并将它们附加到每个选项卡,因此当我切换时,我会得到不同的视图。
当我尝试旋转设备时出现问题。经过一番挣扎,我注意到 Android 会自动重新创建之前添加的片段,如下所示:
SummaryFragment.onCreate(Bundle) line: 79
FragmentManagerImpl.moveToState(Fragment, int, int, int) line: 795
FragmentManagerImpl.moveToState(int, int, int, boolean) line: 1032
FragmentManagerImpl.moveToState(int, boolean) line: 1014
FragmentManagerImpl.dispatchCreate() line: 1761
DashboardActivity(Activity).onCreate(Bundle) line: 864
...
然后我像往常一样重新创建片段。因此,我拥有了我希望能够正常工作的“真实”片段,以及它们的“隐藏”Android 创建的片段,这些片段使我的应用程序崩溃。我怎样才能避免这种行为?我已经尝试在 SummaryFragment 中调用 setRetainInstance(false)。
谢谢