gpt4 book ai didi

android - 选项卡 Activity 中的 fragment 在旋转时丢失所有数据?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:55:48 26 4
gpt4 key购买 nike

我正在使用 Sherlock ActionBar 库,我有一个 SherlockFragmentActivity 实现 ActionBar.TabListener(用于我的选项卡),我有 3 个选项卡...每个都是一个 SherlockFragment。当我旋转时,整个 Activity 被重新创建,我丢失了在 fragment 中的 onCreate 中声明的所有变量。我将如何解决这个问题?

我认为我应该使用 fragment 作为选项卡而不是 Activity ...这是错误的吗?

编辑: 我应该提一下,我目前的解决方法是在选项卡 Activity 中使用静态列表,并让 fragment 在 onPause 时将内容推送到这些列表(并在 onResume 时从它们那里取回内容)。我真的不喜欢这样做,而且我知道必须有更好的方法。

此外,关于 if(savedInstanceState==null),我试过了,但似乎不起作用。我认为这是因为正在重新创建包含我的 fragment 的 Activity ,并且需要重新创建选项卡。

最佳答案

Fragment 类中有一个名为setRetainInstance() 的方法,您需要将该方法设置为true。这将保存 fragment 的实例,然后您可以在 onCreate() 中检查是否有任何已保存的实例。

此处提供更多信息: http://developer.android.com/reference/android/app/Fragment.html

关于android - 选项卡 Activity 中的 fragment 在旋转时丢失所有数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11815669/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com