2014-01-09 5 views
6

Я использую инфраструктуру enter для обработки связи в приложении для Android; проблема, когда я пытаюсь заполнить кок, установив адаптер спинер к неопределенному за исключениемAndroid Spinner Adapter Setting to spinner

Вот код

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); 

Не уверен, в котором блокировать этот код лежит или какой класс, но убедитесь, что this относится к ActivityName.class или the context

+1

Это брок активности, я заселял счетчик в методе, который вызывается при запуске события, что было проблемой, заполнение счетчика в методе doCreate() решило его, спасибо! – khalil

0

Это скорее всего потому, что вы используете ArrayAdapter а не SpinnerAdapter. ArrayAdapter - это косвенный исполнитель интерфейса SpinnerAdapter, а не тот, который заявляет, что он реализует интерфейс. Проверьте неопределенное исключение. Вероятно, вы говорите, что setAdapter(ArrayAdapter) не определен для Spinner.

+3

Вы можете определенно использовать адаптер массива с spinner sir –

+0

:-) Я согласен, что это должно быть возможно, но без полной обратной трассы нам остается до спекуляции. –

+0

Спасибо, брат, моя проблема состояла в том, что я хочу заполнить счетчик при запуске события, и я изменил свое намерение сделать spinner, заполненным другим действием в методе onCreate() и принадлежащим другому макету, теперь он работает. Тнак ты! – khalil