2012-12-08 46 views
4

以下是我的代碼。但它表明這是不可能的。有人可以請我建議我如何將arraylist設置爲微調,而不是將簡單數組設置爲微調。下面是我的代碼。將數組列表設置爲Spinner的方法

ArrayList<String> categoryList = new ArrayList<String>(); 

//這裏我有代碼來設置字符串值的ArrayList

//下面就是我試圖設置ArrayList中的代碼,但它說:「構造ArrayAdapter(新的Runnable() {},INT,ArrayList中)是未定義

Spinner spinnerCategory = (Spinner)findViewById(R.id.spinnercategory); 
        ArrayAdapter<String> categoriesAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, categoryList); 

回答

3

請使用活動的背景下作爲一個ArrayAdapter的第一個參數,你可以使用

ActivityName.this而不是this,其中ActivityName是活動類的名稱。看來您正在運行此代碼,在某些Runnable或Thread類中,所以現在,thisRunnable對象的實例。

1

使用自定義適配器並根據您的數據實施它。這只是一個示例而非工作代碼。

Spinner spinnerCategory = (Spinner)findViewById(R.id.spinnercategory); 
      spinnerCategory.setAdapter(new SpinnerAdapter() { 

      @Override 
      public void unregisterDataSetObserver(DataSetObserver observer) { 
       // TODO Auto-generated method stub 

      } 

      @Override 
      public void registerDataSetObserver(DataSetObserver observer) { 
       // TODO Auto-generated method stub 

      } 

      @Override 
      public boolean isEmpty() { 
       // TODO Auto-generated method stub 
       return false; 
      } 

      @Override 
      public boolean hasStableIds() { 
       // TODO Auto-generated method stub 
       return false; 
      } 

      @Override 
      public int getViewTypeCount() { 
       // TODO Auto-generated method stub 
       return 0; 
      } 

      @Override 
      public View getView(int position, View convertView, ViewGroup parent) { 
       // TODO Auto-generated method stub 
       return null; 
      } 

      @Override 
      public int getItemViewType(int position) { 
       // TODO Auto-generated method stub 
       return 0; 
      } 

      @Override 
      public long getItemId(int position) { 
       // TODO Auto-generated method stub 
       return 0; 
      } 

      @Override 
      public Object getItem(int arg0) { 
       // TODO Auto-generated method stub 
       return null; 
      } 

      @Override 
      public int getCount() { 
       // TODO Auto-generated method stub 
       return 0; 
      } 

      @Override 
      public View getDropDownView(int position, View convertView, ViewGroup parent) { 
       // TODO Auto-generated method stub 
       return null; 
      } 
     }); 
3

使用下列 -

Spinner spinnerCategory = (Spinner)findViewById(R.id.spinnercategory); 
       ArrayAdapter<String> categoriesAdapter = new ArrayAdapter<String>(getApplicationContext(), android.R.layout.simple_spinner_item, categoryList); 
相關問題