在项目中遇到复杂点的RecyclerView,可能会有隐藏部分分割线的需求,例如item1和item3之间的分割线隐藏,item4和item5之间的分割线隐藏等。
在看了文档里的ItemDecoration类后,可以发现这样三个方法:
getItemOffsets、onDraw和onDrawOver。
onDraw可以通过一些列c.draw的方法在itemView绘制之前绘制我们需要的内容。
onDrawOver与
onDraw
类似,只不过是在绘制itemView之后绘制,具体表现形式,就是绘制的内容在itemview上层。
这两个方法在这里不做讨论,重点关注
getItemOffsets
方法。
getItemOffsets
可以通过outRect.set(l,t,r,b)
设置指定itemview的paddingLeft
,paddingTop
,paddingRight
,paddingBottom。
在这里使用一个自定义的分割线去继承
ItemDecoration
,然后在需要隐藏