MyAdapter.java
上传用户:vip_99
上传日期:2021-03-27
资源大小:61159k
文件大小:2k
源码类别:

android开发

开发平台:

Java

  1. package irdc.ex08_13;
  2. /* import相关class */
  3. import java.util.List;
  4. import android.content.Context;
  5. import android.view.LayoutInflater;
  6. import android.view.View;
  7. import android.view.ViewGroup;
  8. import android.widget.BaseAdapter;
  9. import android.widget.TextView;
  10. /* 自定义的Adapter,继承android.widget.BaseAdapter */
  11. public class MyAdapter extends BaseAdapter
  12. {
  13.   /* 变量声明  */
  14.   private LayoutInflater mInflater;
  15.   private List<News> items;
  16.   /* MyAdapter的构造器,传递两个参数  */  
  17.   public MyAdapter(Context context,List<News> it)
  18.   {
  19.     /* 参数初始化 */
  20.     mInflater = LayoutInflater.from(context);
  21.     items = it;
  22.   }
  23.   /* 因继承BaseAdapter,需重写以下方法 */
  24.   @Override
  25.   public int getCount()
  26.   {
  27.     return items.size();
  28.   }
  29.   @Override
  30.   public Object getItem(int position)
  31.   {
  32.     return items.get(position);
  33.   }
  34.   @Override
  35.   public long getItemId(int position)
  36.   {
  37.     return position;
  38.   }
  39.   @Override
  40.   public View getView(int position,View convertView,ViewGroup par)
  41.   {
  42.     ViewHolder holder;
  43.     if(convertView == null)
  44.     {
  45.       /* 使用自定义的news_row作为Layout */
  46.       convertView = mInflater.inflate(R.layout.news_row, null);
  47.       /* 初始化holder的text与icon */
  48.       holder = new ViewHolder();
  49.       holder.text = (TextView) convertView.findViewById(R.id.text);    
  50.       convertView.setTag(holder);
  51.     }
  52.     else
  53.     {
  54.       holder = (ViewHolder) convertView.getTag();
  55.     }
  56.     News tmpN=(News)items.get(position);
  57.     holder.text.setText(tmpN.getTitle());
  58.     
  59.     return convertView;
  60.   }
  61.   /* class ViewHolder */
  62.   private class ViewHolder
  63.   {
  64.     TextView text;
  65.   }
  66. }