嵌套瀑布流

如果是嵌套,就有三个布局,其中两个都有RecyclerView,第一个是标题,第二个是内容
解析内容:
@Override
    public void initDate() {
        super.initDate();
        mRecyclerView = get(R.id.mRecyclerView);
        new HttpOk().get(url.replace("https","http")).Hd(new HttpOk.Cr() {
            @Override
            public void success(String mm) {
                BeanRev beanRev = new Gson().fromJson(mm, BeanRev.class);
                List<BeanRev.DataBean> data = beanRev.getData();
                list.clear();
                list.addAll(data);
                Adpater adpater = new Adpater(context, list);
                StaggeredGridLayoutManager manager = new StaggeredGridLayoutManager(2, 1);
                mRecyclerView.setLayoutManager(manager);
                mRecyclerView.setAdapter(adpater);
            }
        });
    }
首先第一步跟其他的适配器一样:
public class Adpater extends RecyclerView.Adapter<Adpater.Viewhodel>{
    public Context context;

    public Adpater(Context context, List<BeanRev.DataBean> list) {
        this.context = context;
        this.list = list;
    }

    List<BeanRev.DataBean> list;

    @NonNull
    @Override
    public Viewhodel onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {
        View inflate = View.inflate(context, R.layout.item1, null);
        Viewhodel viewhodel = new Viewhodel(inflate);
        return viewhodel;
    }

    @Override
    public void onBindViewHolder(@NonNull Viewhodel viewhodel, int i) {
        List<BeanRev.DataBean.ListBean> list = this.list.get(i).getList();
        //下一个适配器这样传递
        MyAdpater myAdpater = new MyAdpater(context,list);
        StaggeredGridLayoutManager manager = new StaggeredGridLayoutManager(1, 1);
        viewhodel.mmRecyclerView.setLayoutManager(manager);
        viewhodel.mmRecyclerView.setAdapter(myAdpater);


    }

    @Override
    public int getItemCount() {
        return list.size();
    }

    public class Viewhodel extends RecyclerView.ViewHolder {
        TextView title;
        RecyclerView mmRecyclerView;
        public Viewhodel(@NonNull View itemView) {
            super(itemView);
             title=itemView.findViewById(R.id.title);
            mmRecyclerView=itemView.findViewById(R.id.mmRecyclerView);
        }
    }
}
第二个适配器
public class MyAdpater extends RecyclerView.Adapter<MyAdpater.Viewhodel> {
       public Context context;
       public List<BeanRev.DataBean.ListBean> list;

    public MyAdpater(Context context, List<BeanRev.DataBean.ListBean> list) {
        this.context = context;
        this.list = list;
    }

    @NonNull
    @Override
    public Viewhodel onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {
        View inflate = View.inflate(context, R.layout.item2, null);
        Viewhodel viewhodel = new Viewhodel(inflate);
        return viewhodel;
    }

    @Override
    public void onBindViewHolder(@NonNull Viewhodel viewhodel, int i) {
        viewhodel.t1.setText(list.get(i).getTitle());
        //获得图片截取图片
        String images = list.get(i).getImages();
        String[] img = images.split("\\|");

        Glide.with(context).load(img[0]).into(viewhodel.img1);
    }

    @Override
    public int getItemCount() {
        return list.size();
    }

    public class Viewhodel extends RecyclerView.ViewHolder {
        TextView t1;
        ImageView img1;
        public Viewhodel(@NonNull View itemView) {
            super(itemView);
            t1=itemView.findViewById(R.id.t1);
            img1=itemView.findViewById(R.id.img1);
        }
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值