2013-03-28 15 views
7

Ho preparato un modulo in cui devo utilizzare la stessa pagina per aggiungere dettagli e modificare i dettagli. Durante l'aggiunta di dettagli, tutti i campi saranno vuoti e la selezione degli spinner sarà impostata su "nessuna selezione". Ora voglio impostare la selezione dello spinner dell'oggetto che sto per passare dall'attività precedente. Come raggiungere questo? Come spinner non ha alcun metodo simile, setSelection (stringa stringa); O c'è altro modo, posso realizzare questo meccanismo ...come impostare la selezione di selezione all'interno del testo

Qualcuno per favore mi aiuti ...

+0

filatore è sottoclasse di AbsSpinner e AbsSpinner ha un metodo setSelection http://developer.android.com/reference/android/widget/AbsSpinner.html#setSelection (int, boolean) –

+0

@nidhi_adiga. Ya questo è giusto. Ma ho bisogno di impostare la selezione di spinner per nome non da id, in quanto non ho id del testo che voglio passare a setSelection (int posizione) ;. –

+0

Ehi, posso fare così ?? category_spinner.setSelection (category_spinner_array_list.indexOf ("CAT_NAME")); –

risposta

11

I dont ora come spesso questo potrebbe essere utilizzato, ma siamo in grado di impostare la selezione del filatore con il testo al suo interno. Spinner ha il metodo setSelection (posizione int);.

Ora nel parametro abbiamo bisogno di passare la posizione del testo, che possiamo ottenere dal array_list che usiamo per legarsi a adattatore, da getIndexOf(Object object) e oggetto dovrebbe essere del tipo di ArrayList che viene dichiarato, ad esempio, se ArrayList è di tipo String, l'oggetto da passare a getIndexOf(Object object) dovrebbe essere di tipo String.

Infine, è impostare la selezione, come di seguito:

spinner.setSelection (spinner_array_list.indexOf(string)); 
13

Questo è quello che ho fatto e sembra funzionare bene

Spinner my_spinner=(Spinner)findViewById(R.id.spn_items); 
ArrayAdapter<String> array_spinner=(ArrayAdapter<String>)my_spinner.getAdapter(); 
    my_spinner.setSelection(array_spinner.getPosition("list item")); 
+0

facile da capire. grazie... –

Problemi correlati