Android 实现自定义适配器

Android 实现自定义适配器,android,Android,我正在创建一个自定义适配器,这是一个简单的东西,它在adpater的public int getCount()上爆炸。我不知道我错过了什么 public class GREVocabulary extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { sup

我正在创建一个自定义适配器,这是一个简单的东西,它在adpater的public int getCount()上爆炸。我不知道我错过了什么

public class GREVocabulary extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        // set the color mlayout.setBackgroundColor(Color.WHATEVER);
        setContentView(R.layout.main);
        List<String> alphabetslsit = Arrays.asList(getResources().getStringArray(R.array.alphabet));    
        Spinner spinner = (Spinner) findViewById(R.id.spinner);
        try{
        AlphabetAdapter adapter = new AlphabetAdapter(this,alphabetslsit);


        spinner.setAdapter(adapter);
        }
        catch (Exception e)
        {
            Log.v(e.toString(),e.getMessage());
        }

    }
}

public class AlphabetAdapter extends BaseAdapter implements SpinnerAdapter
 {


    private List<String> aplhabetlist;
    private Context context;

    public AlphabetAdapter(Context context, List<String> aplhabetlist ) { 
        this.context = context;
        this.aplhabetlist = aplhabetlist;
    }

    @Override
    public int getCount() 
    {

         return aplhabetlist.size();
    }

    @Override
    public Object getItem(int arg0) {
        return aplhabetlist.get(arg0);
    }

    @Override
    public long getItemId(int arg0) {

        return arg0;
    }

    @Override
    public View getView(int arg0, View arg1, ViewGroup arg2) 
    {
        View view = super.getDropDownView(arg0, arg1, arg2);
        //if (arg0 % 2 == 0) 
        //{
        //  view.setBackgroundColor(Color.BLUE);
        //}

        return view; 

    }

}

BaseAdapter已实现SpinnerAdapter。因此,无需显式实现SpinnerAdapter


爆炸如何?例外?消息是什么?您收到了什么异常或错误?您看到了任何异常吗?您在从机具中删除SpinnerAdapter后看到了吗?另外,请添加您看到的异常的堆栈跟踪。ToString和Message没有多大帮助。我想我知道问题出在哪里,我正在正确地实现getView。另外,我不知道当我不必在getView方法中实现时,在这里该做什么。我应该返回null吗??
// Stack: 2, Locals: 2
  public bridge synthetic void setAdapter(android.widget.Adapter x0);
    0  aload_0 [this]
    1  aload_1 [x0]
    2  checkcast android.widget.SpinnerAdapter [7]
    5  invokevirtual android.widget.AbsSpinner.setAdapter(android.widget.SpinnerAdapter) : void [8]
    8  return
      Line numbers:
        [pc: 0, line: 2]
      Local variable table:
        [pc: 0, pc: 9] local: this index: 0 type: android.widget.AbsSpinner
        [pc: 0, pc: 9] local: x0 index: 1 type: android.widget.Adapter

  // Method descriptor #67 ()Landroid/widget/Adapter;
  // Stack: 1, Locals: 1
  public bridge synthetic android.widget.Adapter getAdapter();
    0  aload_0 [this]
    1  invokevirtual android.widget.AbsSpinner.getAdapter() : android.widget.SpinnerAdapter [9]
    4  areturn
      Line numbers:
        [pc: 0, line: 2]
      Local variable table:
        [pc: 0, pc: 5] local: this index: 0 type: android.widget.AbsSpinner

  Inner classes:
    [inner class info: #36 android/view/ViewGroup$LayoutParams, outer class info: #83 android/view/ViewGroup
     inner name: #37 LayoutParams, accessflags: 9 public static]