1

我想通过 UI 片段中的配置更改(旋转)来保留临时变量。我读过,一般来说你不应该在 UI 片段上使用 setRetainInstance(true)。我在这里有什么选择?我是否必须求助于使用附加到我的片段的 setRetainInstance(true) 的非 ui 子片段?如果可能的话,我想避免子片段可能令人沮丧。

此外,我真的更喜欢将片段变量封装在片段本身内。我可以将数据存储在附加到活动的另一个非 UI 片段中,但我不希望这样做。似乎应该有一个更简单的方法来做到这一点。我希望片段有类似 onRetainNonConfigurationInstance() 作为后备。

谢谢你的帮助。

4

2 回答 2

0

您可以android:configChanges="orientation"在清单中设置住房活动选项。这将导致所有方向更改调用onConfigurationChanged(),而不是onDestroy()

于 2013-07-26T03:11:24.543 回答
0

我从未读过关于不在 UI 片段中使用 setRetainInstanceState 的信息。片段的一大优势是您可以通过配置更改保留状态,只需使用该标志即可。我在所有应用程序中都使用它。试一试:)

此外,子片段不能保留它们的实例状态。

于 2013-07-26T03:13:21.303 回答