官方提供的分割线处理方案,也是继承的RecyclerView.ItemDecoration
实现的。
divider.png
用法很简单,注释里面有demo。同时也可以通过自定义drawable来实现divider的自定义。
1.用系统提供的高度和颜色,不做自定义。
DividerItemDecoration dec = new DividerItemDecoration(mContext,DividerItemDecoration.VERTICAL);
2.DividerItemDecoration 可以通过setDrawable(Drawable drawable)
来设置具体的分割线内容
ColorDrawable:
itemDecoration.setDrawable(new ColorDrawable(ContextCompat.getColor(mContext,R.color.bg_ddddde)));
xml中自定义shape:
自定义shape可以设置分割线的高度和颜色。
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<size android:height="10dp"/>
<solid android:color="@color/bg_ddddde"/>
</shape>
Drawable drawable = ContextCompat.getDrawable(mContext,R.drawable.shape_question_diveder);
使用drawable中的图片:
使用图片的话,分割线的高度就是图片的高度,图片会有拉伸。
Drawable drawable = ContextCompat.getDrawable(mContext,R.mipmap.ic_launcher);
最后通过DividerItemDecoration.setDrawable(Drawable drawable)
就能看到效果了,省了不少力气。