XrecyclerView 多条目

public class Home_ShowAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {

    private   Banner banner;
    private Context context;
    private ShowBean bean;
    private final int Banner_TYPE = 0;
    private final int Chess_TYPE=1;
    private final int ZC_TYPE=2;
    private List<String> priList;
    private List<ShowBean.DataBean.FenleiBean> PdList;
    private List<ShowBean.DataBean.TuijianBean.ListBeanX> TJList;


    public Home_ShowAdapter(Context context, ShowBean bean, List<String> priList,List<ShowBean.DataBean.FenleiBean> PdList
      ,List<ShowBean.DataBean.TuijianBean.ListBeanX> TJList) {
        this.context = context;
        this.bean = bean;
        this.priList = priList;
        this.PdList = PdList;
        this.TJList = TJList;
    }


    @Override
    public int getItemViewType(int position) {

        if(position==0){
            return Banner_TYPE;
        }else if(position==1){
            return Chess_TYPE;
        }else if(position==2){
            return ZC_TYPE;
        }else {
            return super.getItemViewType(position);
        }



    }

    @NonNull
    @Override
    public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
          View view;
        if(viewType==Banner_TYPE){
            view = View.inflate(context, R.layout.layout_banner_holder, null);
            Banner_Holder banner_holder = new Banner_Holder(view);
            return banner_holder;
        }else if(viewType==Chess_TYPE){
            view = View.inflate(context, R.layout.layout_chess_holder, null);
            Chess_Holder chess_holder = new Chess_Holder(view);
            return chess_holder;

        }else if(viewType==ZC_TYPE){
            view = View.inflate(context, R.layout.layout_zc_holer, null);
            ZC_Holder zc_holder = new ZC_Holder(view);
            return zc_holder;

        }


        return null;
    }

    @Override
    public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) {

        if(holder instanceof Banner_Holder){
            Banner_Holder bannerHolder = (Banner_Holder) holder;


            bannerHolder.banner.setImageLoader(new GlideImageLoader());
            bannerHolder.banner.setImages(priList);
            bannerHolder.banner.start();
        }else if(holder instanceof Chess_Holder){
             Chess_Holder chess_holder = (Chess_Holder) holder;

            Pd_Prcy_Adapter adapter = new Pd_Prcy_Adapter(context, PdList);

            GridLayoutManager manager =new GridLayoutManager(context,5);
             chess_holder.xrecycler_view.setLayoutManager(manager);
            chess_holder.xrecycler_view.setAdapter(adapter);


        }else if(holder instanceof ZC_Holder){

            ZC_Holder zc_holder = (ZC_Holder) holder;

            GridLayoutManager manager = new GridLayoutManager(context,2);
            zc_holder.xrecycler_two.setLayoutManager(manager);

            ZC_Prcy_Adapter adapter = new ZC_Prcy_Adapter(context,TJList);

            zc_holder.xrecycler_two.setAdapter(adapter);

        }



    }


    public class GlideImageLoader extends ImageLoader {
        @Override
        public void displayImage(Context context, Object path, ImageView imageView) {
            //Glide 加载图片简单用法
            Glide.with(context).load(path).into(imageView);
        }
    }

    @Override
    public int getItemCount() {
        return 3;
    }




    //轮播视图
    public static class Banner_Holder extends RecyclerView.ViewHolder{

        Banner banner;


        public Banner_Holder(View itemView) {
            super(itemView);
            banner = itemView.findViewById(R.id.img_banner);
        }
    }

    //列表布局
    public static class Chess_Holder extends RecyclerView.ViewHolder{
        XRecyclerView xrecycler_view;
        public Chess_Holder(View itemView) {
            super(itemView);
            xrecycler_view = itemView.findViewById(R.id.xrecycler_view);
        }
    }
    public static class ZC_Holder extends RecyclerView.ViewHolder{
        XRecyclerView xrecycler_two;
        public ZC_Holder(View itemView) {
            super(itemView);
            xrecycler_two =  itemView.findViewById(R.id.xrecycler_two);
        }
    }

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值