Android 中带图片新闻公用的Adapter

来源:互联网 发布:it时代周刊 编辑:程序博客网 时间:2024/04/27 14:38
</pre><pre name="code" class="java">import java.util.ArrayList;import java.util.List;import android.content.Context;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.BaseAdapter;import android.widget.ImageView;import android.widget.TextView;import com.dodo.nj.R;import com.dodo.nj.data.NewsInfo;import com.dodo.nj.imageutil.ImageLoader;/** * @category 带图片新闻公用的Adapter */public class Nyzx_sczl_pxjdAdapter extends BaseAdapter {private Context context;public List<NewsInfo> newsInfos_result = new ArrayList<NewsInfo>();private ImageLoader loader;public Nyzx_sczl_pxjdAdapter(Context context,List<NewsInfo> newsInfos_result) {super();loader = ImageLoader.getInstance(context);this.context = context;if (newsInfos_result != null)this.newsInfos_result = newsInfos_result;}@Overridepublic int getCount() {if (newsInfos_result.size() > 9)return newsInfos_result.size() + 1;elsereturn newsInfos_result.size();}@Overridepublic Object getItem(int position) {if (newsInfos_result.size() > 9)return newsInfos_result.get(position + 1);elsereturn newsInfos_result.get(position);}@Overridepublic long getItemId(int position) {if (position <= 9) {if ((Integer) newsInfos_result.size() == 0) {return -2;}return -1;} else if (position > 9) {if (position > 0 && (position < this.getCount() - 1)) {return newsInfos_result.size();} else {return -2;}} else {return -2;}}@Overridepublic View getView(int position, View convertView, ViewGroup parent) {LayoutInflater inflater = LayoutInflater.from(context);final ViewHolder vh;if (position == this.getCount() - 1 && this.getCount() > 9) {convertView = inflater.inflate(R.layout.more_items, null);return convertView;}if (convertView == null|| convertView.findViewById(R.id.linemore) != null) {vh = new ViewHolder();convertView = inflater.inflate(R.layout.news_lv_item, null);vh.topic_news_icon = (ImageView) convertView.findViewById(R.id.news_lv_items_iv);vh.topic_news_title = (TextView) convertView.findViewById(R.id.news_lv_items_title);vh.topic_news_digest = (TextView) convertView.findViewById(R.id.news_lv_items_gaishu);convertView.setTag(vh);} else {vh = (ViewHolder) convertView.getTag();}final NewsInfo newsInfo = newsInfos_result.get(position);vh.topic_news_title.setText(newsInfo.getTitle());vh.topic_news_digest.setText(newsInfo.getDigest());String imgpath = newsInfo.getImgsrc();if (imgpath != null && !"".equals(imgpath)) {loader.displayImage(imgpath, vh.topic_news_icon, R.drawable.main1);} else {vh.topic_news_icon.setImageResource(R.drawable.main1);}return convertView;}}class ViewHolder {ImageView topic_news_icon;TextView topic_news_title;TextView topic_news_digest;}

0 0
原创粉丝点击