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

android开发

开发平台:

Java

  1. package irdc.ex10_01;
  2. /* import相关class */
  3. import android.content.Context;
  4. import android.view.LayoutInflater;
  5. import android.view.View;
  6. import android.view.ViewGroup;
  7. import android.widget.BaseAdapter;
  8. import android.widget.TextView;
  9. /* 自定义的Adapter,继承android.widget.BaseAdapter */
  10. public class MyAdapter extends BaseAdapter
  11. {
  12.   private LayoutInflater mInflater;
  13.   private int[] color;
  14.   private int[] text;
  15.   public MyAdapter(Context context,int[] _color,int[] _text)
  16.   {
  17.     mInflater = LayoutInflater.from(context);
  18.     color = _color;
  19.     text = _text;
  20.   }
  21.   
  22.   /* 因继承BaseAdapter,需覆盖以下方法 */
  23.   @Override
  24.   public int getCount()
  25.   {
  26.     return text.length;
  27.   }
  28.   @Override
  29.   public Object getItem(int position)
  30.   {
  31.     return text[position];
  32.   }
  33.   
  34.   @Override
  35.   public long getItemId(int position)
  36.   {
  37.     return position;
  38.   }
  39.   
  40.   @Override
  41.   public View getView(int position,View convertView,ViewGroup par)
  42.   {
  43.     ViewHolder holder;
  44.     
  45.     if(convertView == null)
  46.     {
  47.       /* 使用自定义的change_color作为Layout */
  48.       convertView = mInflater.inflate(R.layout.change_color, null);
  49.       /* 初始化holder的text */
  50.       holder = new ViewHolder();
  51.       holder.mText=(TextView)convertView.findViewById(R.id.myText);
  52.       convertView.setTag(holder);
  53.     }
  54.     else
  55.     {
  56.       holder = (ViewHolder) convertView.getTag();
  57.     }
  58.     holder.mText.setText(text[position]);
  59.     holder.mText.setBackgroundResource(color[position]);
  60.      
  61.     return convertView;
  62.   }
  63.   
  64.   /* class ViewHolder */
  65.   private class ViewHolder
  66.   {
  67.     TextView mText;
  68.   }
  69. }