2014-01-09 103 views
6

我正在使用eneter框架來處理我android應用程序中的通信; 的問題是,當我試圖填充微調,適配器未定義例外Android微調適配器設置爲微調

這裏設置的微調導致代碼

public void populateSpinner(TypedResponseReceivedEventArgs<String> arg1){ 
    List<String> list = new ArrayList<String>(); 
    String listf = arg1.getResponseMessage(); 
    //sendToDebug(listf); 
    StringTokenizer tokenizer = new StringTokenizer(listf,","); 
    while(tokenizer.hasMoreElements()){ 
     list.add((String)tokenizer.nextElement()); 
    } 
    //EditText text = (EditText)findViewById(R.id.number2EditText); 
    //text.setText(list.size()); 
    //text.setText(listf); 
    Spinner forfait = (Spinner)findViewById(R.id.forfaitsSpinner); 
      ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item,list); 
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
    forfait.setAdapter(adapter); 
} 
+0

你能發佈你得到的例外? –

+0

你得到哪種類型的錯誤?哪一行? – Piyush

回答

21

您傳遞this在下面的代碼段,

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, 
        android.R.layout.simple_spinner_item,list); 

不知道在阻止這種代碼位於或哪一類,但要確保thisActivityName.classthe context

+1

這是一個活動兄弟,我在一個事件被觸發時調用的方法中填充了微調,這就是問題,在doCreate()方法中填充微調項來解決它,謝謝! – khalil

0

這很可能是因爲您使用的是ArrayAdapter而不是SpinnerAdapterArrayAdapter是接口的間接實現者,而不是聲明其實現接口的接口。檢查未定義的異常。很可能告訴你setAdapter(ArrayAdapter)未被定義爲Spinner

+3

你可以肯定地使用一個微調數組適配器先生 –

+0

:-)我同意它應該是可能的,但沒有完整的回溯我們留下來猜測。 –

+0

謝謝兄弟,我的問題是,當事件被解僱時,我想填充微調器,我修改了我的設計,使得微調器在onCreate()方法的另一個活動中填充,並且屬於另一個佈局,現在可以工作。 Thnak你! – khalil