-1

我有一个带有导航抽屉、一个活动和许多片段的应用程序。当我更改设备方向时,我的主要活动是重新创建,并且出现的是我的主要片段,而不是当前片段。就像我启动应用程序时一样。

如何恢复当前片段以及与所选片段关联的数据?

我看过这篇文章,但它不起作用:使用导航抽屉保存片段状态

提前感谢那些可以帮助我的人。

4

2 回答 2

0

我发现片段状态已经为您保留了。

这就是我所做的:我检查是否savedInstanceState为空。如果是,我执行FragmentManager事务以显示主要片段。如果不为null,则表示片段状态是持久化的。我不进行任何类型的事务,并且从持久状态为我重新创建了片段。

于 2016-03-14T01:47:03.560 回答
0
if (savedInstanceState == null){
    //Launch HomeFragment onStart...
    Fragment fragment = new HomeFragment();
    FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
    ft.replace(R.id.frame, fragment).commit();
}

onCreate我在我的主要活动中添加了这个

于 2018-07-10T03:11:07.210 回答