升级动机:
2.x版本不在进行新功能的增加,同时3.x版本多布局更佳灵活,考虑到经常使用该库,所以进行升级
项目地址: https://github.com/CymChad/BaseRecyclerViewAdapterHelper
普通改动点:
- helper.addOnClickListener修改为addChildClickViewIds,且不能放在convert中,java需要 放在构造方法中,kotlin放在init中
- BaseViewHolder导包修改 import com.chad.library.adapter.base.BaseViewHolder;改为
import com.chad.library.adapter.base.viewholder.BaseViewHolder; - setGone的true和false对调,需要修改成相反逻辑
- adapter.emptyView = xxxx需要修改为adapter.setEmpty()
- setNewData()设置第一页数据需要修改为setList(),否则赋值不成功
- 上下文mContext,java改为getContext(), kotlin改为context来获取context
- 数据源mData,java改为getData(),kotln改为data来获取数据源**
较大改动点:
1.快速实现带头部的 Adapter,BaseSectionQuickAdapter,这里只列举了item只有一种类型的写法,多类型可以参考github写法
Adapter代码如下:
public class SectionQuickAdapter extends BaseSectionQuickAdapter<MySection, BaseViewHolder> {
/**
* 构造方法里, super()必须设置 header layout
* data可有可无
*/
public SectionQuickAdapter(int layoutResId, int sectionHeadResId, List<MySection> data) {
super(sectionHeadResId, data);
// 设置普通item布局(如果item类型只有一种,使用