package com.example.adapter; import java.util.List; import com.example.bean.CircleImageView; import com.example.bean.News; import com.example.indicator.R; import com.nostra13.universalimageloader.core.ImageLoader; import android.content.Context; import android.support.v4.app.FragmentActivity; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.ImageView; import android.widget.TextView; public class MyBaseAdapter extends BaseAdapter { private List<News> newsList; private Context context; public MyBaseAdapter(Context context, List<News> newsList) { this.context = context; this.newsList = newsList; } @Override public int getCount() { // TODO Auto-generated method stub return newsList.size(); } @Override public Object getItem(int position) { // TODO Auto-generated method stub return null; } @Override public long getItemId(int position) { return 0; } @Override public int getItemViewType(int position) { News news = newsList.get(position); if (news.imgSmall != null && news.imgSmall.length() > 0) { return 1; } else { return 0; } } @Override public int getViewTypeCount() { return 4; } @Override public View getView(int position, View convertView, ViewGroup parent) { int i = getItemViewType(position); ViewHolder0 vh0 = null; ViewHolder1 vh1 = null; if (convertView == null) { switch (i) { case 0: convertView = View.inflate(context, R.layout.item2, null); vh0 = new ViewHolder0(); vh0.portrait = (CircleImageView) convertView .findViewById(R.id.portrait2); vh0.authorid = (TextView) convertView .findViewById(R.id.authorid2); vh0.body = (TextView) convertView.findViewById(R.id.body2); convertView.setTag(vh0); break; case 1: convertView = View.inflate(context, R.layout.item, null); vh1 = new ViewHolder1(); vh1.portrait = (CircleImageView) convertView .findViewById(R.id.portrait); vh1.authorid = (TextView) convertView .findViewById(R.id.authorid); vh1.body = (TextView) convertView.findViewById(R.id.body); vh1.imgSmall = (ImageView) convertView .findViewById(R.id.imgSmall); convertView.setTag(vh1); break; default: break; } } else { switch (i) { case 0: vh0 = (ViewHolder0) convertView.getTag(); break; case 1: vh1 = (ViewHolder1) convertView.getTag(); break; default: break; } } ImageLoader imageLoader = ImageLoader.getInstance(); News news = newsList.get(position); switch (i) { case 0: vh0.authorid.setText(news.authorid); vh0.body.setText(news.body); imageLoader.displayImage(news.portrait, vh0.portrait); break; case 1: vh1.authorid.setText(news.authorid); vh1.body.setText(news.body); imageLoader.displayImage(news.portrait, vh1.portrait); imageLoader.displayImage(news.imgSmall, vh1.imgSmall); break; default: break; } return convertView; } class ViewHolder0 { CircleImageView portrait; TextView authorid; TextView body; } class ViewHolder1 { CircleImageView portrait; TextView authorid; TextView body; ImageView imgSmall; } }
listview_item多条目加载
猜你喜欢
转载自zhengaihua.iteye.com/blog/2333432
今日推荐
周排行