2013-05-12 6 views
0

Я хотел бы получить строку, которую пользователь выбирает из меню прядильщика. Он должен получить строку после того, как пользователь выберет одну из них и сохранит эту строку в новой переменной. У меня был такой код, что новая переменная могла принимать значение по умолчанию и не может обновить то, что выбрал пользователь.Получение строки из spinner

Струны

String[] models={"Model 1" , "Model 2" }; 

и мой OnCreate метод выглядит следующим образом:

Spinner spinModel=(Spinner)findViewById(R.id.spinnerModel); 
spinModel.setOnItemSelectedListener(this); 
//creamos el spinner con las cadenas de modelos almacenadas en la variable items 
ArrayAdapter<String> aa= new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,models); 
//Decimos como debe mostrar este elemento 
aa.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
//editamos el spinner 
spinModel.setAdapter(aa); 
    //I TRIED THIS FUNCTION 
model = spinModel.getSelectedItem().toString(); 

Большое спасибо всем !!

ответ

0

У меня был такой код, что новая переменная могла принимать значение по умолчанию и не может обновить то, что выбрал пользователь.

Вам нужно назначить OnItemSelectedListener для вашего Spinner и назначить SelectedItem в OnItemSelected методом. Это сделает трюк.

spinModel.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() 
    { 
     public void onItemSelected(AdapterView<?> arg0, View v, int position, 
            long id) { 
      model = spinModel.getSelectedItem().toString(); 
     } 

     public void onNothingSelected(AdapterView<?> arg0) { } 
    }); 
+0

Тогда, я думаю, это работает как кнопка. ОК! большое спасибо, я попробую! – pistacho