Effective-MultiType 踩坑指南

一.前言

MultiType是一个实现复杂布局的框架,可以轻松实现以下效果:
这里写图片描述

Effective-MultiType项目地址

二.踩过的坑
1.在使用MultiTypeAdapter mAdapter注册子item的时候,同一个xxx.class只能被注册一次,比如下面DataBean.class被注册了两次,但是只能显示其中一个的数据。如果DataBean.class有了多个list字段数据,建议在使用MultiType的时候单独为每个DataBean.class里的list单独建一个类。如下面的b)所示
 //1.注册类型和View的对应关系
        mAdapter = new MultiTypeAdapter();
        //列表标题头
        mAdapter.register(CategoryBean.class, new CategoryViewBinder());
        //Feature
        mAdapter.register(DataBean.class, new FeatureViewBinder(mContext));
        //Special
        mAdapter.register(DataBean.class, new SpecialViewBinder(mContext));
a).DataBean.class的部分字段
    private List<BannersBean> banners;
    private List<CategoriesBean> categories;
    private List<BooksBean> books;
    private List<SpecialsBean> specials;


    public DataBean(List<BannersBean> banners, List<CategoriesBean> categories, List<BooksBean> books, List<SpecialsBean> specials) {
        this.banners = banners;
        this.categories = categories;
        this.books = books;
        this.specials = specials;
    }
b).单独为books
public class BooksListBean extends BaseEntity.BaseBean {

    private List<BooksBean> books;

    public BooksListBean(List<BooksBean> books) {
        this.books = books;
    }

    public List<BooksBean> getBooks() {
        return books;
    }

    public void setBooks(List<BooksBean> books) {
        this.books = books;
    }

    @Override
    public String toString() {
        return "BooksListBean{" +
                "books=" + books +
                '}';
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

尼诺和尼可

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值