xlistview以及ImageLoader获取网络图片适配器



public class MyAdapter extends BaseAdapter {

    private Context context;
    private List<Beans.DataBean> list;
    private ImageLoader imageLoader = ImageLoader.getInstance();
    private DisplayImageOptions bulider;

    private static int one=0;
    private static int two=1;
    private static int san=2;

    public MyAdapter(Context context, List<Beans.DataBean> list) {
        this.context = context;
        this.list = list;


        bulider = new DisplayImageOptions.Builder()
                .showImageForEmptyUri(R.mipmap.ic_launcher)
                .bitmapConfig(Bitmap.Config.RGB_565)
                .cacheInMemory(true)
                .cacheOnDisk(true)  //设置支持SD卡缓存
                .displayer(new CircleBitmapDisplayer(30))
                .build();
    }

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

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

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

    @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;
        }else if(thumbnail_pic_s!=null&&thumbnail_pic_s02!=null&&thumbnail_pic_s03==null){
            return two;
        }else if(thumbnail_pic_s!=null&&thumbnail_pic_s02!=null&&thumbnail_pic_s03!=null){
            return san;
        }
        return one;
    }

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

    @Override
    public View getView(int position, View contentview, ViewGroup viewGroup) {
        int type = getItemViewType(position);
        if(type==one){
            ViewHolder viewHolder;
            if(contentview==null){
                contentview = View.inflate(context,R.layout.item1,null);
                viewHolder = new ViewHolder();
                viewHolder.name = contentview.findViewById(R.id.name);
                viewHolder.img = contentview.findViewById(R.id.img);
                contentview.setTag(viewHolder);
            }else{
                viewHolder = (ViewHolder) contentview.getTag();
            }
            viewHolder.name.setText(list.get(position).getTitle());
            String thumbnail_pic_s = list.get(position).getThumbnail_pic_s();
            imageLoader.displayImage(thumbnail_pic_s,viewHolder.img,bulider);
        }else if(type==two){
            ViewHolder1 viewHolder1;
            if(contentview==null){
                contentview = View.inflate(context,R.layout.item2,null);
                viewHolder1 = new ViewHolder1();
                viewHolder1.name1 = contentview.findViewById(R.id.name1);
                viewHolder1.img1 = contentview.findViewById(R.id.img1);
                viewHolder1.img2 = contentview.findViewById(R.id.img2);
                contentview.setTag(viewHolder1);
            }else{
                viewHolder1 = (ViewHolder1) contentview.getTag();
            }
            viewHolder1.name1.setText(list.get(position).getTitle());
            String thumbnail_pic_s = list.get(position).getThumbnail_pic_s();
            String thumbnail_pic_s02 = list.get(position).getThumbnail_pic_s02();
            imageLoader.displayImage(thumbnail_pic_s,viewHolder1.img1,bulider);
            imageLoader.displayImage(thumbnail_pic_s02,viewHolder1.img2,bulider);
        }else if(type==san){
            ViewHolder2 viewHolder2;
            if(contentview==null){
                contentview = View.inflate(context,R.layout.item3,null);
                viewHolder2 = new ViewHolder2();
                viewHolder2.name2 = contentview.findViewById(R.id.name2);
                viewHolder2.imge1 = contentview.findViewById(R.id.imge1);
                viewHolder2.imge2 = contentview.findViewById(R.id.imge2);
                viewHolder2.imge3 = contentview.findViewById(R.id.imge3);
                contentview.setTag(viewHolder2);
            }else{
                viewHolder2 = (ViewHolder2) contentview.getTag();
            }
            viewHolder2.name2.setText(list.get(position).getTitle());
            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();
            imageLoader.displayImage(thumbnail_pic_s,viewHolder2.imge1,bulider);
            imageLoader.displayImage(thumbnail_pic_s02,viewHolder2.imge2,bulider);
            imageLoader.displayImage(thumbnail_pic_s03,viewHolder2.imge3,bulider);
        }
        return contentview;
    }

    class ViewHolder{
        public TextView name;
        public ImageView img;
    }

    class ViewHolder1{
        public TextView name1;
        public ImageView img1;
        public ImageView img2;
    }

    class ViewHolder2{
        public TextView name2;
        public ImageView imge1;
        public ImageView imge2;
        public ImageView imge3;
    }

}

猜你喜欢

转载自blog.csdn.net/weixin_43936560/article/details/85982401