Completamento automatico personalizzato in Android
-
28-09-2019 - |
Domanda
Voglio visualizzare Elenco dei nomi dei contatti con i rispettivi numeri di telefono
come
Vikas Patidar <9999999999>
Rahul Patidar <9999999999>
utilizzando AutoCompleteTextView quando un testo tipo di utente nel campo numero di cellulare.
In stile predefinito che può visualizzare solo l'elenco dei nomi.
Qualcuno può dirmi come posso realizzare questo in modo che quando un utente seleziona una qualsiasi voce nella lista e in grado di visualizzare il numero di quello in campo del numero mobile.
Soluzione
È necessario utilizzare l'adattatore per questo compito. Ad esempio, con SimpleAdapter :
SimpleAdapter adapter = new SimpleAdapter(context, list, R.id.row_layout, new String[] { "Name", "Phone" }, new int[] { R.id.name, R.id.phone });
autoCompleteField.setAdapter(adapter);
Per questo è necessario fare un file di layout XML e la lista deve essere di tipo List<? extends Map<String, ?>
. Le stringhe in 4 ° parametro sono le chiavi per le mappe in lista. INT nel quinto parametro sono identificativi dei componenti nel file di layout.
In alternativa, è possibile estendere qualsiasi adattatore e usarlo. Vedere questo link per riferimento.