不能保留嵌套片段嵌套、片段

2023-09-05 23:15:26 作者:公子薄情

有没有保存嵌套的片段的状态的另一种方式? 或者,如果我们不应该这样做,为什么呢?谢谢!

  11月二号日至13日:42:43.258:E / AndroidRuntime(7167):java.lang.IllegalStateException:不能保留嵌套在其他片段fragements
十一月二号至13日:42:43.258:E / AndroidRuntime(7167):在android.support.v4.app.Fragment.setRetainInstance(Fragment.java:742)
 

解决方案

您可以使用FragmentManager.saveFragmentInstanceState(Fragment)检索片段的状态。返回值实现Parcelable,所以你可以把它放在一个包。

集合嵌套存储和遍历元素

有关恢复,您可以创建使用片段Fragment.setInitialSavedState(Fragment.SavedState).

Is there another way of saving the state of the nested fragment ? Or if we shouldn't do this, why ? Thanks !

02-13 11:42:43.258: E/AndroidRuntime(7167): java.lang.IllegalStateException: Can't retain fragements that are nested in other fragments
02-13 11:42:43.258: E/AndroidRuntime(7167):     at android.support.v4.app.Fragment.setRetainInstance(Fragment.java:742)

解决方案

You can use FragmentManager.saveFragmentInstanceState(Fragment) to retrieve a fragment state. The return value implements Parcelable, so you can put it in a Bundle.

For restoration, you can provide the state after creating the fragment using Fragment.setInitialSavedState(Fragment.SavedState).