多条目

class MyBase extends BaseAdapter{
    private List<JavaBease.ResultBean.DataBean> list;
    private Context context;
    private DisplayImageOptions imageOptions;
    private final int ONE_IMG = 0;
    private final int TWO_IMG = 1;
    private final int THREE_IMG = 2;
    public MyBase(List<JavaBease.ResultBean.DataBean> list, Context context) {
        this.list = list;
        this.context = context;
        //2.显示配置
         imageOptions = new DisplayImageOptions.Builder()
          .cacheInMemory(true)//使用内存缓存
          .cacheOnDisk(true)//使用磁盘缓存
          .showImageOnLoading(R.mipmap.ic_launcher)//设置正在下载的图片
          .showImageForEmptyUri(R.mipmap.ic_launcher)//url为空或请求的资源不存在时
          .showImageOnFail(R.mipmap.ic_launcher)//下载失败时显示的图片
          .bitmapConfig(Bitmap.Config.RGB_565)//设置图片色彩模式  1px=2个字节  ARGB_8888 1px=4个字节   ARGB_4444 1px=2个字节  ALPHA_8 1px=1个字节
          .imageScaleType(ImageScaleType.EXACTLY)//设置图片的缩放模式
          .displayer(new RoundedBitmapDisplayer(100))//设置图片的圆角 注意:控件必须要设定宽度与高度
          .build();
    }
    @Override
    public int getViewTypeCount() {
        return 3;
    }
    @Override
    public int getItemViewType(int position) {
        String thumbnail_pic_s = list.get(position).getThumbnail_pic_s();
        String thumbnail_pic_s02 = list.get(position).getThumbnail_pic_s02();
        String thumbnail_pic_s03 = list.get(position).getThumbnail_pic_s03();
        if (thumbnail_pic_s!=null && thumbnail_pic_s02==null && thumbnail_pic_s03==null){
            return ONE_IMG;
        }else if (thumbnail_pic_s==null && thumbnail_pic_s02!=null && thumbnail_pic_s03==null){
            return TWO_IMG;
        }else {
            return THREE_IMG;
        }
    }
    @Override
    public int getCount() {
        return list.size();
    }

    @Override
    public Object getItem(int i) {
        return list.get(i);
    }

    @Override
    public long getItemId(int i) {
        return i;
    }

    @SuppressLint({"ResourceType", "WrongViewCast"})
    @Override
    public View getView(int i, View view, ViewGroup viewGroup) {
        int itemViewType = getItemViewType(i);
        if (itemViewType == ONE_IMG){
            ViewHolder holder;
            if (view == null){
                view = View.inflate(context,R.layout.base,null);
                holder = new ViewHolder();
                holder.imageView = view.findViewById(R.id.imageView);
                holder.textView = view.findViewById(R.id.basetextView);
                view.setTag(holder);
            }else {
                holder = (ViewHolder) view.getTag();
            }
            holder.textView.setText(list.get(i).getTitle());
            ImageLoader.getInstance().displayImage(list.get(i).getThumbnail_pic_s(),holder.imageView,imageOptions);
            return view;
        }else if(itemViewType==TWO_IMG){
            ViewHolder1 holder1;
            if (view == null){
                view = View.inflate(context,R.layout.base1,null);
                holder1 = new ViewHolder1();
                holder1.textView = view.findViewById(R.id.base1textView);
                holder1.imageView = view.findViewById(R.id.base1imageView2);
                holder1.imageView1 = view.findViewById(R.id.baseimageView3);
                view.setTag(holder1);
            }else {
                holder1 = (ViewHolder1) view.getTag();
            }
            holder1.textView.setText(list.get(i).getTitle());
            ImageLoader.getInstance().displayImage(list.get(i).getThumbnail_pic_s(),holder1.imageView,imageOptions);
            ImageLoader.getInstance().displayImage(list.get(i).getThumbnail_pic_s02(),holder1.imageView1,imageOptions);
        }else {
            ViewHolder2 holder2;
            if (view == null){
                view = View.inflate(context,R.layout.base2,null);
                holder2 = new ViewHolder2();
                holder2.textView = view.findViewById(R.id.base2textView);
                holder2.imageView = view.findViewById(R.id.base2imageView2);
                holder2.imageView1 = view.findViewById(R.id.base2imageView3);
                holder2.imageView2 = view.findViewById(R.id.base2imageView4);
                view.setTag(holder2);
            }else {
                holder2 = (ViewHolder2) view.getTag();
            }
            holder2.textView.setText(list.get(i).getTitle());
            ImageLoader.getInstance().displayImage(list.get(i).getThumbnail_pic_s(),holder2.imageView,imageOptions);
            ImageLoader.getInstance().displayImage(list.get(i).getThumbnail_pic_s02(),holder2.imageView1,imageOptions);
            ImageLoader.getInstance().displayImage(list.get(i).getThumbnail_pic_s03(),holder2.imageView2,imageOptions);
        }
        return view;
    }
    class ViewHolder{
        TextView textView;
        ImageView imageView;
    }
    class ViewHolder1{
        TextView textView;
        ImageView imageView,imageView1;
    }
    class ViewHolder2{
        TextView textView;
        ImageView imageView,imageView1,imageView2;
    }
}

猜你喜欢

转载自blog.csdn.net/fry3309/article/details/79990561