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 NewsAdapter extends BaseAdapter { private Context context; private List<News.ResultBean.DataBean> list; public NewsAdapter(Context context, List<News.ResultBean.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 getItemViewType(int position) { List<News.ResultBean.DataBean.ImagesBean> beans = list.get(position).getImages(); if (beans.size() == 0 ){ return 3; }else if(beans.size() == 1){ return 2; }else if(beans.size() == 2){ return 1; }else { return 0; } } @Override public int getViewTypeCount() { return 4; } @Override public View getView(int position, View convertView, ViewGroup parent) { ViewHolder1 holder1 = null; ViewHolder2 holder2 = null; ViewHolder3 holder3 = null; ViewHolder4 holder4 = null; int type = getItemViewType(position); switch (type){ case 3: if (convertView == null){ convertView = View.inflate(context,R.layout.layout_list4,null); holder4 = new ViewHolder4(); holder4.txtTitle = convertView.findViewById(R.id.txt_title); convertView.setTag(holder4); }else { holder4 = (ViewHolder4) convertView.getTag(); } holder4.txtTitle.setText(list.get(position).getTitle()); break; case 2: if (convertView == null){ convertView = View.inflate(context,R.layout.layout_list3,null); holder3 = new ViewHolder3(); holder3.iamgeLogo1 = convertView.findViewById(R.id.image_logo); holder3.txtTitle = convertView.findViewById(R.id.txt_title); convertView.setTag(holder3); }else { holder3 = (ViewHolder3) convertView.getTag(); } ImageLoader.getInstance().displayImage(list.get(position).getImages().get(0).getU(),holder3.iamgeLogo1); holder3.txtTitle.setText(list.get(position).getTitle()); break; case 1: if (convertView == null){ convertView = View.inflate(context,R.layout.layout_list2,null); holder2 = new ViewHolder2(); holder2.iamgeLogo1 = convertView.findViewById(R.id.image_logo); holder2.iamgeLogo2 = convertView.findViewById(R.id.image_logo1); holder2.txtTitle = convertView.findViewById(R.id.txt_title); convertView.setTag(holder2); }else { holder2 = (ViewHolder2) convertView.getTag(); } ImageLoader.getInstance().displayImage(list.get(position).getImages().get(0).getU(),holder2.iamgeLogo1); ImageLoader.getInstance().displayImage(list.get(position).getImages().get(1).getU(),holder2.iamgeLogo2); holder2.txtTitle.setText(list.get(position).getTitle()); break; case 0: if (convertView == null){ convertView = View.inflate(context,R.layout.layout_list1,null); holder1 = new ViewHolder1(); holder1.iamgeLogo1 = convertView.findViewById(R.id.image_logo); holder1.iamgeLogo2 = convertView.findViewById(R.id.image_logo1); holder1.iamgeLogo3 = convertView.findViewById(R.id.image_logo2); holder1.txtTitle = convertView.findViewById(R.id.txt_title); convertView.setTag(holder1); }else { holder1 = (ViewHolder1) convertView.getTag(); } ImageLoader.getInstance().displayImage(list.get(position).getImages().get(0).getU(),holder1.iamgeLogo1); ImageLoader.getInstance().displayImage(list.get(position).getImages().get(1).getU(),holder1.iamgeLogo2); ImageLoader.getInstance().displayImage(list.get(position).getImages().get(2).getU(),holder1.iamgeLogo3); holder1.txtTitle.setText(list.get(position).getTitle()); break; } return convertView; } class ViewHolder1{ ImageView iamgeLogo1; ImageView iamgeLogo2; ImageView iamgeLogo3; TextView txtTitle; } class ViewHolder2{ ImageView iamgeLogo1; ImageView iamgeLogo2; TextView txtTitle; } class ViewHolder3{ ImageView iamgeLogo1; TextView txtTitle; } class ViewHolder4{ TextView txtTitle; } }
多条目适配器使用
猜你喜欢
转载自blog.csdn.net/cxx13700/article/details/82729495
今日推荐
周排行