package com.example.dell.zk21_fragment; import android.content.Context; import android.media.Image; 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.ImageLoader; import java.util.List; public class Fragment1_MyAdapter extends BaseAdapter { private Context context; private List<Bean.ResultBean.DataBean> list; public Fragment1_MyAdapter(Context context, List<Bean.ResultBean.DataBean> list) { this.context = context; this.list = list; } @Override public int getCount() { return list.size(); } //这里判断数据的Type类型 @Override public int getItemViewType(int position) { String type= list.get(position).getType(); int state=0; //如果等于bstate = 0 if("b".equals(type)){ state=0; }else{ state=1; } return state; } //这里返回type数量 因为只有ab两种 所以 返回二,如有更多 @Override public int getViewTypeCount() { return 2; } @Override public Object getItem(int position) { return null; } @Override public long getItemId(int position) { return 0; } @Override public View getView(int position, View convertView, ViewGroup parent) { //循环type int type=getItemViewType(position); switch (type){ case 0: ViewHolder viewHolder; if (convertView == null) { viewHolder = new ViewHolder(); convertView = View.inflate(context, R.layout.fragment_item, null); viewHolder.fragment_item_text = (TextView) convertView.findViewById(R.id.fragment_item_text); viewHolder.image1 = (ImageView) convertView.findViewById(R.id.img1); viewHolder.image2 = (ImageView) convertView.findViewById(R.id.img2); viewHolder.image3 = (ImageView) convertView.findViewById(R.id.img3); convertView.setTag(viewHolder); } else { viewHolder = (ViewHolder) convertView.getTag(); } //a类型3张图片 imageloader加载三张图片 viewHolder.fragment_item_text.setText(list.get(position).getTitle()); String image1 = list.get(position).getThumbnail_pic_s(); String image2 = list.get(position).getThumbnail_pic_s02(); String image3 = list.get(position).getThumbnail_pic_s03(); ImageLoader.getInstance().displayImage(image1, viewHolder.image1); ImageLoader.getInstance().displayImage(image2, viewHolder.image2); ImageLoader.getInstance().displayImage(image3, viewHolder.image3); break; case 1: ViewHolder2 viewHolder2; if (convertView == null) { viewHolder2 = new ViewHolder2(); convertView = View.inflate(context, R.layout.item2, null); viewHolder2.item2_text = (TextView) convertView.findViewById(R.id.item2_text); viewHolder2.item2_image = (ImageView) convertView.findViewById(R.id.item2_image); convertView.setTag(viewHolder2); } else { viewHolder2 = (ViewHolder2) convertView.getTag(); } //b类型一张 加载一张 viewHolder2.item2_text.setText(list.get(position).getTitle()); String item2_image = list.get(position).getThumbnail_pic_s(); ImageLoader.getInstance().displayImage(item2_image, viewHolder2.item2_image); break; } return convertView; } class ViewHolder { private String a; private TextView fragment_item_text; private ImageView image1; private ImageView image2; private ImageView image3; } class ViewHolder2 { private TextView item2_text; private ImageView item2_image; } //只是最简单的多条目加载 (不推荐) /* ViewHolder viewHolder; if (convertView == null){ viewHolder = new ViewHolder(); convertView = View.inflate(context,R.layout.fragment_item,null); viewHolder.fragment_item_text = (TextView)convertView.findViewById(R.id.fragment_item_text); viewHolder.image1 = (ImageView)convertView.findViewById(R.id.img1); viewHolder.image2 = (ImageView)convertView.findViewById(R.id.img2); viewHolder.image3 = (ImageView)convertView.findViewById(R.id.img3); convertView.setTag(viewHolder); }else{ viewHolder = (ViewHolder) convertView.getTag(); } viewHolder.fragment_item_text.setText(list.get(position).getTitle()); String type = list.get(position).getType(); if (type.equals("a")){ String data = list.get(position).getThumbnail_pic_s(); ImageLoader.getInstance().displayImage(data,viewHolder.image1); viewHolder.image3.setVisibility(View.GONE); viewHolder.image2.setVisibility(View.GONE); }else{ viewHolder.image3.setVisibility(View.VISIBLE); viewHolder.image2.setVisibility(View.VISIBLE); String image1 = list.get(position).getThumbnail_pic_s(); String image2 = list.get(position).getThumbnail_pic_s02(); String image3 = list.get(position).getThumbnail_pic_s03(); ImageLoader.getInstance().displayImage(image1,viewHolder.image1); ImageLoader.getInstance().displayImage(image2,viewHolder.image2); ImageLoader.getInstance().displayImage(image3,viewHolder.image3); }*/ }