参考资料
背景介绍
RecyclerView由于它强大的灵活性,已经可以代替掉传统的ListView和GridView等列表控件了。但是也因为它的灵活性,一些东西就没有固定,需要我们自己来实现,比如RecyclerView就没有提供默认的分割线,当我们需要一条分割线时,我们需要自己通过继承RecyclerView.ItemDecoration来实现。当然,它不仅仅可以实现分割线,还能创造很多不一样的效果,这取决于我们的想象力在这个限制范围内能到什么程度了。在另一篇RecyclerView——LayoutManager中,我们有必要先了解一点本篇的内容。接下来我们来好好聊聊ItemDecoration。
认识ReccylerView.ItemDecoration
为RecyclverView添加ItemDecoration
我们可以通过调用:
mRecyclerView.addItemDecoration(mItemDecoration);
来为我们的RecyclerView添加一个自定义的ItemDecoration装饰它。
这里值得注意的是我们采用的是addXXX方法,这意味着我们可以为RcyclerView添加多个ItemDecoration。打开该方法的源码我们可以看到:
//这是我们通常调用的代码
public void addItemDecoration(ItemDecoration decor) {
//这里又调用了另一个重载的方法
addItemDecoration(decor, -1);
}
/**
* Add an {@link Ite