android之针对fragment多次调用onCreateView的问题的解决方法疑问
2016-01-08 来自:青菜 0 人回应

有一个ViewPager,里面有5个fragment,为了避免每次滑动切换fragment时候都去调用onCreateView的界面初始化方法,按照网上提供的方法,于是做了如下修改:

 @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        if (rootView == null) {

            rootView = inflater.inflate(R.layout.fragment, container, false);
            initView(rootView);
        }
        if (rootView.getParent() != null) {
            ViewGroup p = (ViewGroup) rootView.getParent();
            p.removeAllViews();
        }
        return rootView;
    }

但是发现,这里有个问题,如果走到

rootView.getParent() != null

这个分支后,会导致整个Fragment里的view都被删除了,从而导致这个界面就显示不出来。关于onCreateView多次调用的解决方法往事提供的都是这个,难道就没有我刚才说的这个问题吗?请大牛们帮忙解惑!!!



还没有人回应!

您的回应

你还未登陆,不能回应!登陆