So che sembra molto semplice e ci sono domande a riguardo. Ma nessuno di questi potrebbe risolvere il mio problema. Quindi qui si va:Cambia colore di sfondo di un elemento in Android ListActivity onListItemClick
voglio cambiare il colore di una voce di elenco di sfondo in un ListActivity
quando l'utente fa clic su di esso, e cambiare di nuovo al colore originale quando l'utente fa clic di nuovo (per esempio selezionare/deselezionare voce sorta di sguardo)
Ho provato a utilizzare getChildAt, funziona perfettamente se ho tutti gli elementi visibili in una schermata senza dover scorrere.
Codice:
getListView().getChildAt(position).setBackgroundColor(Color.CYAN);
Il problema inizia quando ho più elementi nella lista e l'utente deve scorrere attraverso di loro. Una volta modificato lo sfondo per un oggetto, il colore di sfondo viene visualizzato sugli elementi appena visibili mentre scorro. Inoltre, getChildAt(position)
restituisce null
(e quindi un NullPointerException
) quando si fa nuovamente clic sull'elemento.
Qualcuno può aiutarmi con un semplice codice che mi aiuti a cambiare il colore di sfondo di un elemento della lista?
Grazie in anticipo!
Penso che questo argomento vi aiuterà a farlo. http://stackoverflow.com/questions/2217753/changing-background-color-of-listview-items-on-android – thiagolsilva