避免对fragment多次调用onCreateView的问题

2015年3月7日 由 Creater 留言 »

Fragment之间切换时每次都会调用onCreateView方法,导致每次Fragment的布局都重绘,无法保持Fragment原有状态。
解决办法:在Fragment onCreateView方法中缓存View

private View rootView;
@Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        if (null != rootView) {
            ViewGroup parent = (ViewGroup) rootView.getParent();
            if (null != parent) {
                parent.removeView(rootView);
            }
        } else {
            rootView = inflater.inflate(layoutId, null);
            initView(rootView);// 控件初始化
        }
        return rootView;
    }
广告位

发表评论

你必须 登陆 方可发表评论.