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

android开发

开发平台:

Java

  1. package irdc.ex05_18;
  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<String> items;
  16.   private List<String> values;
  17.   /* MyAdapter的构造器,传入三个参数  */  
  18.   public MyAdapter(Context context,List<String> item,
  19.                    List<String> value)
  20.   {
  21.     /* 参数初始化 */
  22.     mInflater = LayoutInflater.from(context);
  23.     items = item;
  24.     values = value;
  25.   }
  26.   
  27.   /* 因继承BaseAdapter,需覆盖以下方法 */
  28.   @Override
  29.   public int getCount()
  30.   {
  31.     return items.size();
  32.   }
  33.   @Override
  34.   public Object getItem(int position)
  35.   {
  36.     return items.get(position);
  37.   }
  38.   
  39.   @Override
  40.   public long getItemId(int position)
  41.   {
  42.     return position;
  43.   }
  44.   
  45.   @Override
  46.   public View getView(int position,View convertView,ViewGroup par)
  47.   {
  48.     ViewHolder holder;
  49.   
  50.     if(convertView == null)
  51.     {
  52.       /* 使用自定义的file_row作为Layout */
  53.       convertView = mInflater.inflate(R.layout.row_layout,null);
  54.       /* 初始化holder的text与icon */
  55.       holder = new ViewHolder();
  56.       holder.text1=(TextView)convertView.findViewById(R.id.myText1);
  57.       holder.text2=(TextView)convertView.findViewById(R.id.myText2);
  58.     
  59.       convertView.setTag(holder);
  60.     }
  61.     else
  62.     {
  63.       holder = (ViewHolder) convertView.getTag();
  64.     }
  65.     /* 设置要显示的信息 */
  66.     holder.text1.setText(items.get(position).toString());
  67.     holder.text2.setText(values.get(position).toString());
  68.   
  69.     return convertView;
  70.   }
  71.   
  72.   /* class ViewHolder */
  73.   private class ViewHolder
  74.   {
  75.     /* text1:信息名称
  76.      * text2:信息内容 */
  77.     TextView text1;
  78.     TextView text2;
  79.   }
  80. }