我通过隐藏最后一个片段并添加一个新片段(参见下面的代码)在片段之间切换 - 也将其添加到后台堆栈。这样,用户可以在 Fragment 之间快速切换,而无需重新加载 Fragment 数据。
这在应用程序被终止之前运行良好(场景:用户使用其他几个应用程序并且我的应用程序被持久化并被终止)。
当用户打开应用程序时,它正在被恢复并显示所有片段 -彼此重叠。
问题:恢复的碎片如何恢复其隐藏状态?也许我错过了一些标志?某处?也许有更好的解决方案可以在片段之间快速切换(无需重新加载数据)?
添加片段的示例代码 - 单击某处时使用不同的片段多次调用:
FragmentTransaction fragmentTransaction = getFragmentManager().beginTransaction();
fragmentTransaction.hide(lastFragment);
fragmentTransaction.add(newFragment);
fragmentTransaction.addToBackStack(null);
fragmentTransaction.commit();
lastFragment = newFragment;