多条目加载并用imageLoder加载图片

package com.bwie.lenovo.yuekaoa;

import android.content.Context;
import android.os.Handler;
import android.util.Log;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;

import com.nostra13.universalimageloader.core.DisplayImageOptions;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;

import java.util.List;


public class MyXlistViewAdapter extends BaseAdapter {
    private List<Data.DataBean> list;
    private Context context;
    private  final int TYPE1=0;
    private  final int TYPE2=1;
    private  final int TYPE3=2;
    ImageLoader  imageLoader;
    DisplayImageOptions  options;
    public MyXlistViewAdapter(List<Data.DataBean> list, Context context) {
        this.list = list;
        this.context = context;
        imageLoader = ImageLoader.getInstance();
        ImageLoaderConfiguration configuration=ImageLoaderConfiguration
                .createDefault(context);
        imageLoader.init(configuration);
        options = new DisplayImageOptions.Builder()
                .showImageOnLoading(R.mipmap.ic_launcher)
                .build();
    }

    @Override
    public int getCount() {
        return list!=null?list.size():0;
    }

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

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

    @Override
    public int getItemViewType(int size) {
        switch (size){
            case 0:
                return TYPE1;
            case 1:
                return TYPE2;
            case 3:
                return TYPE3;
            default:
                return  TYPE1;
        }
    }

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

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        Holder holder;
        Data.DataBean bean = list.get(position);
        List<Data.DataBean.ImageListBean> image_list = bean.getImage_list();
        int size = image_list!=null?bean.getImage_list().size():0;
        int type = getItemViewType(size);
        convertView=null;
        if (convertView==null){
            holder =new Holder();
            switch (type){
                case  TYPE1:
                    convertView = View.inflate(context,R.layout.item1,null);
                    break;
                case  TYPE2:
                    convertView = View.inflate(context,R.layout.item2,null);
                    holder.imageView1 = (ImageView) convertView.findViewById(R.id.iv);
                    break;
                case  TYPE3:
                    convertView = View.inflate(context,R.layout.item3,null);
                    holder.imageView1 = (ImageView) convertView.findViewById(R.id.iv1);
                    holder.imageView2 = (ImageView) convertView.findViewById(R.id.iv2);
                    holder.imageView3 = (ImageView) convertView.findViewById(R.id.iv3);
                    break;

            }
            holder.title = (TextView) convertView.findViewById(R.id.title);
            holder.source = (TextView) convertView.findViewById(R.id.source);
            convertView.setTag(holder);
        }else {
            holder = (Holder) convertView.getTag();
        }
        holder.title.setText(bean.getTitle());
        holder.source.setText(bean.getSource());
        switch (type){
            case  TYPE2:
                imageLoader.displayImage(image_list.get(0).getUrl(),holder.imageView1,options);
                break;
            case  TYPE3:
                    imageLoader.displayImage(image_list.get(0).getUrl(), holder.imageView1,options);
                    imageLoader.displayImage(image_list.get(1).getUrl(), holder.imageView2,options);
                    imageLoader.displayImage(image_list.get(2).getUrl(), holder.imageView3,options);
                break;
        }
        return convertView;
    }
    class Holder{
        TextView  title,source;
        ImageView imageView1,imageView2,imageView3;
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值