因为我使用不同的布局进行纵向和横向视图。我在片段中使用这些不同的布局。
为了保留片段的状态,我添加了:
setRetainInstance(true);
在片段constrtuctor中。我还添加了
android:configChanges="keyboardHidden|orientation|screenSize"
活动标签中的包含片段。
现在我不希望我的片段再次重启,因为我在这个片段中下载书时显示了百分比的进度条,所以当片段再次重新启动时,它将再次花费时间加载页面而不显示进度杆
答案 0 :(得分:-1)
试试这个:
- 在FragmentActivity中覆盖此方法:
@Override
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
if(yourFragment != null && yourFragment.isAdded()){
getSupportFragmentManager().putFragment(outState, YourFragment.class.getName(), yourFragment);
}
}
- onCreate()中的相同FragmentActivity将此:
if (savedInstanceState != null) {
yourFragment = (YourFragment) getSupportFragmentManager().getFragment(savedInstanceState, YourFragment.class.getName());
}
- 你不必使用onRetainInstance和/或android:configChanges