problema: ho uno spinner con una serie di dati e vorrei che, selezionando un valore diverso, il programma eseguisse una certa azione.
Il mio codice dell'evento onCreate è il seguente:
public void onCreate(Bundle savedInstanceState) {
[...]
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, array);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
ChunkSize = (Spinner) findViewById(R.id.Spinner01);
FileParts = (TextView) findViewById(R.id.TextView05);
ChunkSize.setAdapter(adapter);
ChunkSize.setEnabled(false);
ChunkSize.setOnItemSelectedListener(
new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> arg0,
View arg1, int arg2, long arg3) {
FileParts.setText(ChunkSize.getSelectedItemPosition());
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
//add some code here
}
);
[...]Quando il programma carica l'activity, va in crash e si interrompe l'esecuzione.
A quanto pare il problema è nella riga
ileParts.setText(ChunkSize.getSelectedItemPosition());. Se la commento, il programma parte normalmente ma poi non sono in grado di ottenere alcun effetto se cambio il valore dello Spinner.
Domande:
- Come risolvo?
- E' possibile fare in modo che lo spinner non mostri alcun valore all'avvio?