RecycleView多布局适配器(简单全部展示)

 
 
private ArrayList<Bean.ResultBean.DataBean> list = new ArrayList<>();
private Context mContext;

public MyAdapter(ArrayList<Bean.ResultBean.DataBean> list, Context mContext) {
    this.list = list;
    this.mContext = mContext;
}

@NonNull
@Override
public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
    if(viewType==1){
        View inflate = LayoutInflater.from(mContext).inflate(R.layout.item, null);
        return new VH(inflate);
    }
    if(viewType==2){
        View inflate = LayoutInflater.from(mContext).inflate(R.layout.item2, null);
        return new VH2(inflate);
    }
    if(viewType==3){
        View inflate = LayoutInflater.from(mContext).inflate(R.layout.item3, null);
        return new VH3(inflate);
    }
    return null;
}

@Override
public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) {
    if(holder instanceof VH){
        Glide.with(mContext).load(list.get(position).getThumbnail_pic_s()).into(((VH) holder).img);
        ((VH) holder).text1.setText(list.get(position).getTitle());
    }
    if(holder instanceof VH2){
        Glide.with(mContext).load(list.get(position).getThumbnail_pic_s()).into(((VH2) holder).img);
        Glide.with(mContext).load(list.get(position).getThumbnail_pic_s02()).into(((VH2) holder).img2);
        ((VH2) holder).text2.setText(list.get(position).getTitle());
    }
    if(holder instanceof VH3){
        Glide.with(mContext).load(list.get(position).getThumbnail_pic_s()).into(((VH3) holder).img);
        Glide.with(mContext).load(list.get(position).getThumbnail_pic_s02()).into(((VH3) holder).img2);
        Glide.with(mContext).load(list.get(position).getThumbnail_pic_s03()).into(((VH3) holder).img3);
        ((VH3) holder).text3.setText(list.get(position).getTitle());
    }
}

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

@Override
public int getItemViewType(int position) {
    if(list.get(position).getThumbnail_pic_s02()==null){
        return  1;
    }else if(list.get(position).getThumbnail_pic_s03()==null){
        return  2;
    }else{
        return  3;
    }
}


class VH extends RecyclerView.ViewHolder{
    private ImageView img;
    private TextView text1;

    public VH(View itemView) {
        super(itemView);
        img=itemView.findViewById(R.id.img);
        text1=itemView.findViewById(R.id.text1);
    }
}
class VH2 extends RecyclerView.ViewHolder{
    private ImageView img,img2;
    private TextView text2;


    public VH2(View itemView) {
        super(itemView);
        img=itemView.findViewById(R.id.img);
        img2=itemView.findViewById(R.id.img2);
        text2=itemView.findViewById(R.id.text2);
    }
}

class VH3 extends RecyclerView.ViewHolder{
    private ImageView img,img2,img3;
    private TextView text3;

    public VH3(View itemView) {
        super(itemView);
        img=itemView.findViewById(R.id.img);
        img2=itemView.findViewById(R.id.img2);
        img3=itemView.findViewById(R.id.img3);
        text3=itemView.findViewById(R.id.text3);
    }

}
public interface OnClick{
    void OnClicklistener (int position);
    void OnLongClicklistener (int position);
}
OnClick onClick;
public void setOnClick(OnClick onClick){
    this.onClick=onClick;
}

猜你喜欢

转载自blog.csdn.net/qq_41832319/article/details/80263937