解决viewPager+Fragment会出现viewpager中的fragment高度不正常的问题

版权声明:本文为博主原创文章,转载请注明出处 https://blog.csdn.net/fzkf9225/article/details/79963541

当你用到viewPager+Fragment这个组合的时候可能会出现字fragment出现子部fragment高度显示不了或者不正常的问题,那么我们只需要重写viewpager即可,在viewpager中计算下子布局的大小即可:

 @Override
    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {

        int height = 0;
        for (int i = 0; i < getChildCount(); i++) {
            View child = getChildAt(i);
            child.measure(widthMeasureSpec, MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED));
            int h = child.getMeasuredHeight();
            if (h > height)
                height = h;
        }

        heightMeasureSpec = MeasureSpec.makeMeasureSpec(height, MeasureSpec.EXACTLY);

        super.onMeasure(widthMeasureSpec, heightMeasureSpec);
    }

以上代码添加在自定义的viewpager中

猜你喜欢

转载自blog.csdn.net/fzkf9225/article/details/79963541