片段的的onSaveInstanceState()不会被调用 [英] Fragment's onSaveInstanceState() is never called

查看:256
本文介绍了片段的的onSaveInstanceState()不会被调用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想将数据保存在一个片段的的onSaveInstanceState(),但是该方法不会被调用。

有人能帮助?

 公共类MyFragment扩展片段{

    @覆盖
    公共查看onCreateView(LayoutInflater充气,容器的ViewGroup,捆绑savedInstanceState){
        滚动型的含量=(滚动型)inflater.inflate(R.layout.content,集装箱,假);
        //更多的东西
        返回的内容;
    }

    @覆盖
    公共无效的onSaveInstanceState(包冰柱){
        //从不叫
        super.onSaveInstanceState(冰柱);
        //更多的东西
    }

}
 

解决方案

我终于想通了这个问题,至少在我的情况。我在我的FragmentActivity被覆盖的onSaveInstanceState 那不叫 super.onSaveInstanceState(包outState)。有一次,我补充说,在中, Fragment.onSaveInstanceState(包outState)功能正常。

I'm trying to save data in a Fragment's onSaveInstanceState(), but the method is never called.

Can someone help?

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
    }

}

解决方案

I finally figured out the problem, at least in my case. I had an overridden onSaveInstanceState in my FragmentActivity that did not call super.onSaveInstanceState(Bundle outState). Once I added that in, the Fragment.onSaveInstanceState(Bundle outState) functioned normally.

这篇关于片段的的onSaveInstanceState()不会被调用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆