优化, 并为图片赋值
@Override public View getView(int position, View convertView, ViewGroup parent) { int itemViewType = getItemViewType(position); switch (itemViewType){ case 0: MyHoulder myHoulder; if (convertView == null ){ convertView = View.inflate(context, R.layout.yemianyi_item, null); myHoulder = new MyHoulder(); myHoulder.datu= convertView.findViewById(R.id.datu); myHoulder.time = convertView.findViewById(R.id.time); myHoulder.title = convertView.findViewById(R.id.title); myHoulder.image= convertView.findViewById(R.id.image); convertView.setTag(myHoulder); }else{ myHoulder= (MyHoulder) convertView.getTag(); } myHoulder.time.setText(list.get(position).getCreated_at()); myHoulder.title.setText(list.get(position).getText()); //大图 String bimageuri = list.get(position).getBimageuri(); ImageView datu = myHoulder.datu; ImageLoader.getInstance().displayImage(bimageuri,datu, MyApp.getOptions()); //小图 String videouri = list.get(position).getImage0(); ImageView image = myHoulder.image; ImageLoader.getInstance().displayImage(videouri,image,MyApp.getOptions()); break; case 1: MyHoulder2 myHoulder2 = new MyHoulder2(); if (convertView == null){ convertView = View.inflate(context, R.layout.yemian1_item2, null); myHoulder2.text = convertView.findViewById(R.id.text); myHoulder2.text1 = convertView.findViewById(R.id.text2); myHoulder2.xiaotu=convertView.findViewById(R.id.xiaotu); convertView.setTag(myHoulder2); }else{ myHoulder2 = (MyHoulder2) convertView.getTag(); } myHoulder2.text.setText(list.get(position).getName()); myHoulder2.text1.setText(list.get(position).getLove()); /** * ImageLoader 根据图片地址加载网络图片 * * url * ImageView * * 导包 * 配置 * 初始化 * Option * ImageLoader.getInstance().displayImage(url,imageview,MyApp.getOptions); * */ String url = list.get(position).getProfile_image(); ImageView imageView=myHoulder2.xiaotu; ImageLoader.getInstance().displayImage(url,imageView, MyApp.getOptions()); break; } return convertView; } class MyHoulder{ TextView title; TextView time; ImageView image; ImageView datu; } class MyHoulder2{ TextView text; TextView text1; ImageView xiaotu; }
重写这两个方法
@Override public int getItemViewType(int position) { String type = list.get(position).getType(); if (type.equals("41")){ return 0; } return 1; } @Override public int getViewTypeCount() { return 2; } }