美文网首页
SpacesItemDecoration

SpacesItemDecoration

作者: 红桃小花 | 来源:发表于2017-08-25 11:02 被阅读0次

    public classSpacesItemDecorationextendsRecyclerView.ItemDecoration{

    private intdividerHeight;

    privatePaintpaint;

    publicSpacesItemDecoration(Context context) {

    dividerHeight= context.getResources().getDimensionPixelSize(R.dimen.margin);

    paint=newPaint();

    paint.setColor(context.getResources().getColor(R.color.colorAccent));

    }

    @Override

    public voidgetItemOffsets(Rect outRect, View view, RecyclerView parent, RecyclerView.State state) {

    super.getItemOffsets(outRect, view, parent, state);

    /**

    * 类似加了一个bottom的padding

    */

    outRect.bottom=dividerHeight;

    }

    @Override

    public voidonDraw(Canvas c, RecyclerView parent, RecyclerView.State state) {

    super.onDraw(c, parent, state);

    intchildCount = parent.getChildCount();

    intleft = parent.getPaddingLeft();

    intright = parent.getWidth() - parent.getPaddingRight();

    for(inti =0; i < childCount -1; i++) {

    View view = parent.getChildAt(i);

    floattop = view.getBottom();

    floatbottom = view.getBottom() +dividerHeight;

    /**

    * 绘制的矩形也就是从,item的左上角,到右下角,类似于背景,

    * 正好显示出一个横线,就是getItemOffsets空出来的范围

    */

    c.drawRect(left, top, right, bottom,paint);

    }

    }

    }

    相关文章

      网友评论

          本文标题:SpacesItemDecoration

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