adapter

来源:互联网 发布:易语言电视直播源码 编辑:程序博客网 时间:2024/06/05 09:08
package a16.erin.unit14_xlist_http;

import android.content.Context;
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 com.nostra13.universalimageloader.core.display.FadeInBitmapDisplayer;

import java.util.ArrayList;
import java.util.List;

/**
 * Created by mamiaomiao on 17/8/14.
 */
        
public class MyAdapter extends BaseAdapter {
    private List<DataTotalBean.DataBean> value = new ArrayList<>();
    private Context context;
    private ImageLoader loader;
    private DisplayImageOptions options;

    public MyAdapter(Context context) {
        this.context = context;
        loader=ImageLoader.getInstance();
        ImageLoaderConfiguration configuration=ImageLoaderConfiguration.createDefault(context);
        loader.init(configuration);
       options=new DisplayImageOptions.Builder()
        .cacheInMemory(true)
        .cacheOnDisk(true)
        .displayer(new FadeInBitmapDisplayer(20))
        .build();
    }
    //追加数据
public void addData(List<DataTotalBean.DataBean> value){
    this.value.addAll(value);
    notifyDataSetChanged();
}
    public void updateData(List<DataTotalBean.DataBean> value){
        this.value.clear();
        addData(value);
    }

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

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

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

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        ViewHolder holder=null;
        if (convertView == null) {
            convertView = View.inflate(context, R.layout.item, null);
            holder=new ViewHolder(convertView);
            convertView.setTag(holder);
        }else{
            holder=(ViewHolder)convertView.getTag();
        }
        holder.item_name.setText(value.get(position).getSource_name());
        holder.item_address.setText(value.get(position).getTitle());
        List<DataTotalBean.DataBean.ImgUrlBean> imgs=value.get(position).getImg();
        if(imgs!=null&&imgs.size()>0){
loader.displayImage(imgs.get(0).url,holder.item_img,options);

        }
        return convertView;
    }

    public static class ViewHolder {
        public View rootView;
        public ImageView item_img;
        public TextView item_name;
        public TextView item_address;

        public ViewHolder(View rootView) {
            this.rootView = rootView;
            this.item_img = (ImageView) rootView.findViewById(R.id.item_img);
            this.item_name = (TextView) rootView.findViewById(R.id.item_name);
            this.item_address = (TextView) rootView.findViewById(R.id.item_address);
        }

    }
}