美文网首页
RecyclerView添加分割线条目大小不一样

RecyclerView添加分割线条目大小不一样

作者: zsj1225 | 来源:发表于2018-05-26 18:27 被阅读142次

RecyclerView添加分割线导致条目大小不一样.如下图


288482192138107424.jpg
        public void measureChild(View child, int widthUsed, int heightUsed) {
            final LayoutParams lp = (LayoutParams) child.getLayoutParams();

            final Rect insets = mRecyclerView.getItemDecorInsetsForChild(child);
            widthUsed += insets.left + insets.right;
            heightUsed += insets.top + insets.bottom;
            final int widthSpec = getChildMeasureSpec(getWidth(), getWidthMode(),
                    getPaddingLeft() + getPaddingRight() + widthUsed, lp.width,
                    canScrollHorizontally());
            final int heightSpec = getChildMeasureSpec(getHeight(), getHeightMode(),
                    getPaddingTop() + getPaddingBottom() + heightUsed, lp.height,
                    canScrollVertically());
            if (shouldMeasureChild(child, widthSpec, heightSpec, lp)) {
                child.measure(widthSpec, heightSpec);
            }
        }

通过阅读源码发现.分割线留出的位置实际是占用子View的位置.所以才会导致大小不一样的情况.

相关文章

网友评论

      本文标题:RecyclerView添加分割线条目大小不一样

      本文链接:https://www.haomeiwen.com/subject/loomjftx.html