我有片段活动,从片段A开始,然后可以更改为片段B.如果我在片段B上,我旋转我的设备。它加载原始片段A而不是片段B.我正在实际加载片段A和B。我以为android应该保存我自动处理的Fragment我没有覆盖onSaveInstanceState
这是我加载片段的方式
FragmentTransaction t = this.getSupportFragmentManager()
.beginTransaction();
t.replace(R.id.fragholder, new MainFragment());
t.commit();
答案 0 :(得分:0)
当您旋转设备时,它会破坏您的活动并重新创建它。因此,假设Fragment A是默认的Fragment,那么在重新创建Activity时它会加载它是合乎逻辑的。因此,您需要覆盖onSaveInstanceState以存储哪些Fragment可见,然后在onCreate中重新加载该Fragment。
参考相关活动生命周期文档:http://developer.android.com/training/basics/activity-lifecycle/recreating.html
答案 1 :(得分:0)
只需将android:configChanges =“orientation | screenSize”添加到您的清单中,android就会为您处理所有事情