【发布时间】:2017-01-04 19:59:18
【问题描述】:
我无法恢复我的片段!
我正在保存:
@Override
public void onSaveInstanceState(Bundle savedInstanceState)
{
if(cameraFragment != null && cameraFragment.isAdded())
getSupportFragmentManager().putFragment(savedInstanceState, "cameraFrameLayout", cameraFragment);
super.onSaveInstanceState(savedInstanceState);
}
并在 onCreate(savedInstanceState) 中恢复:
if(savedInstanceState == null)
cameraFragment = CameraFragment.newInstance();
else
cameraFragment = (CameraFragment) getSupportFragmentManager().findFragmentByTag("cameraFrameLayout");
当我更改设备方向时,我可以成功看到 onSaveInstanceState 与我的片段一起调用,但在 onCreate 上我有一个空实例...
求救!
【问题讨论】:
-
你在
CameraFragment上打过setRetainInstance(true)吗? -
同样的事情(我已经将 setRetainInstance(true) 放在我的片段的 onCreateView() 上...)
标签: android