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.ImageLoader; import java.util.List; public class MyAdapter extends BaseAdapter { private Context context; private static int Type_one = 0; private static int Type_two = 1; private static String imgurl = "http://365jia.cn/uploads/"; private List<News.DataBeanX.DataBean> list; public MyAdapter(Context context, List<News.DataBeanX.DataBean> list) { this.context = context; this.list = list; } @Override public int getCount() { return list.size(); } @Override public Object getItem(int position) { return list.get(position); } @Override public long getItemId(int position) { return position; } @Override public int getViewTypeCount() { return 2; } @Override public int getItemViewType(int position) { if(list.get(position).getType().equals("images")){ return Type_two; }else { return Type_one; } } @Override public View getView(int position, View convertView, ViewGroup parent) { int type = getItemViewType(position); ViewHolder1 holder1 = null; ViewHolder2 holder2 = null; switch (type){ case 0: if (convertView == null){ holder1 = new ViewHolder1(); convertView = View.inflate(context,R.layout.item_one,null); holder1.txtTitle = convertView.findViewById(R.id.txttitle); holder1.img1 = convertView.findViewById(R.id.img1); convertView.setTag(holder1); }else { holder1 = (ViewHolder1) convertView.getTag(); } holder1.txtTitle.setText(list.get(position).getTitle()); ImageLoader.getInstance().displayImage(imgurl+ list.get(position).getPics().get(0),holder1.img1); break; case 1: if (convertView == null){ holder2 = new ViewHolder2(); convertView = View.inflate(context,R.layout.item_three,null); holder2.txttitle = convertView.findViewById(R.id.txttitle); holder2.img1 = convertView.findViewById(R.id.img1); holder2.img2 = convertView.findViewById(R.id.img2); holder2.img3 = convertView.findViewById(R.id.img3); convertView.setTag(holder2); }else { holder2 = (ViewHolder2) convertView.getTag(); } holder2.txttitle.setText(list.get(position).getTitle()); ImageLoader.getInstance().displayImage(imgurl+ list.get(position).getPics().get(0),holder2.img1); ImageLoader.getInstance().displayImage(imgurl+ list.get(position).getPics().get(1),holder2.img2); ImageLoader.getInstance().displayImage(imgurl+ list.get(position).getPics().get(2),holder2.img3); break; } return convertView; } class ViewHolder1{ ImageView img1; TextView txtTitle; } class ViewHolder2{ TextView txttitle; ImageView img1; ImageView img2; ImageView img3; } }
适配器的正确使用
猜你喜欢
转载自blog.csdn.net/cxx13700/article/details/82562438
今日推荐
周排行