Adapter-MyAdapter

来源:互联网 发布:大数据的特点包含 编辑:程序博客网 时间:2024/06/05 04:15
package com.example.administrator.myday_09;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.example.myday_09.R;import com.nostra13.universalimageloader.core.ImageLoader;import java.util.List;/** * Created by Administrator on 2017/10/11. */public class MyAdapter extends BaseAdapter{    Context context;    List<DataDataBean.ResultBean.ListBean> list;    private int TYTLE_ONLY = 0;//只有文字的形式    private int IMAGE_LEFT = 1;//表示图片在左边,文字在右边    private int IMAGE_RIGHT = 2;//* 2表示图片在右边,文字在左边    private int IMAGE_BOTTOM = 3;// * 3表示文字在上边,图片在下面    public MyAdapter(Context context, List<DataDataBean.ResultBean.ListBean> list){        this.context = context;        this.list = list;    }    @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;    }    /**     * 1.适配器中重写这个getViewTypeCount方法...得到视图类型的数量,,,也就是listView要展示多少种不同的视图     * @return     */    @Override    public int getViewTypeCount() {        return 4;    }    @Override    public int getItemViewType(int position) {        if (position%4 == 0){            return TYTLE_ONLY;        }else if (position %4==1){            return IMAGE_LEFT;        }else if (position %4==2){            return IMAGE_RIGHT;        }        return IMAGE_BOTTOM;    }    @Override    public View getView(int i, View view, ViewGroup viewGroup) {        //在做优化之前先判断一下当前条目展示的是哪一种类型,,,然后再进行关联布局进行优化        if (getItemViewType(i) == TYTLE_ONLY){            TitleHolder holder;            if (view == null){                view = View.inflate(context, R.layout.item_title_layout,null);                holder = new TitleHolder();                holder.textView = view.findViewById(R.id.text_title);                view.setTag(holder);            }else {                holder = (TitleHolder) view.getTag();            }            //赋值            holder.textView.setText(list.get(i).getTitle());        }else if (getItemViewType(i) == IMAGE_LEFT){            ImageLeftHolder holder;            if (view == null){                view = View.inflate(context, R.layout.item_layout,null);                holder = new ImageLeftHolder();                holder.textView = view.findViewById(R.id.text_title);                holder.imageView = view.findViewById(R.id.image_view);                view.setTag(holder);            }else {                holder = (ImageLeftHolder) view.getTag();            }            //赋值            holder.textView.setText(list.get(i).getTitle());            //显示图片            ImageLoader.getInstance().displayImage(list.get(i).getFirstImg(),holder.imageView, ImageLoaderUtil.getDefaultOption());        }else if (getItemViewType(i) == IMAGE_RIGHT){            ImageRightHolder holder;            if (view == null){                view = View.inflate(context, R.layout.item_right_layout,null);                holder = new ImageRightHolder();                holder.textView = view.findViewById(R.id.text_title);                holder.imageView = view.findViewById(R.id.image_view);                view.setTag(holder);            }else {                holder = (ImageRightHolder) view.getTag();            }            //赋值            holder.textView.setText(list.get(i).getTitle());            //显示图片            ImageLoader.getInstance().displayImage(list.get(i).getFirstImg(),holder.imageView, ImageLoaderUtil.getDefaultOption());        }else if (getItemViewType(i) == IMAGE_BOTTOM){            ImageBottomHolder holder;            if (view == null){                view = View.inflate(context, R.layout.item_bottom_layout,null);                holder = new ImageBottomHolder();                holder.textView = view.findViewById(R.id.text_title);                holder.imageView = view.findViewById(R.id.image_view);                view.setTag(holder);            }else {                holder = (ImageBottomHolder) view.getTag();            }            //赋值            holder.textView.setText(list.get(i).getTitle());            //显示图片            ImageLoader.getInstance().displayImage(list.get(i).getFirstImg(),holder.imageView, ImageLoaderUtil.getDefaultOption());        }        return view;    }    private class TitleHolder{        TextView textView;    }    private class ImageLeftHolder{        TextView textView;        ImageView imageView;    }    private class ImageRightHolder{        TextView textView;        ImageView imageView;    }    private class ImageBottomHolder{        TextView textView;        ImageView imageView;    }}
原创粉丝点击