首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >从不调用片段的onSaveInstanceState()

从不调用片段的onSaveInstanceState()
EN

Stack Overflow用户
提问于 2011-12-14 19:19:51
回答 5查看 54.3K关注 0票数 69

我试图将数据保存在片段的onSaveInstanceState()中,但该方法从未被调用过。

有人能帮帮忙吗?

代码语言:javascript
复制
public class MyFragment extends Fragment {

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        ScrollView content = (ScrollView) inflater.inflate(R.layout.content, container, false);
        // More stuff
        return content;
    }

    @Override
    public void onSaveInstanceState(Bundle icicle) {
        // NEVER CALLED
        super.onSaveInstanceState(icicle);
        //More stuff
    }

}
EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2012-01-06 09:34:03

我终于找到了问题所在,至少在我的情况下是这样。我的FragmentActivity中有一个被覆盖的onSaveInstanceState,它没有调用super.onSaveInstanceState(Bundle outState)。一旦我将其添加到中,Fragment.onSaveInstanceState(Bundle outState)就可以正常工作。

票数 69
EN

Stack Overflow用户

发布于 2014-01-03 05:14:32

我遇到了与您相同的问题,并尝试了onSaveInstanceState()方法,但不起作用。

我认为onSaveInstanceState()只适用于用户从一个活动跳到另一个活动并返回的场景,它不适用于用户在同一活动中的片段之间跳转的场景。

这是来自Google的指南文档。http://developer.android.com/guide/components/tasks-and-back-stack.html#ActivityState

票数 34
EN

Stack Overflow用户

发布于 2011-12-14 20:04:36

需要检查的一件事是,通过在AndroidManifest.xml中包含android:configChanges标志,确保包含片段的活动不会阻止重启。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8503629

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档