Sé que suena muy simple, y hay preguntas sobre esto. Pero nada de eso podría resolver mi problema. Así que aquí vamos:Cambiar el color de fondo de un elemento en Android ListActivity onListItemClick
que quieren cambiar el color de fondo de un elemento de la lista en un ListActivity
cuando el usuario hace clic en él, y cambiarlo de nuevo al color original cuando el usuario hace clic de nuevo (es decir, Seleccionar/Deseleccionar elemento tipo de mirada)
He intentado usar getChildAt, funciona perfectamente si tengo todos los elementos visibles en una pantalla sin tener que desplazarme.
Código:
getListView().getChildAt(position).setBackgroundColor(Color.CYAN);
El problema comienza cuando tenga más elementos de la lista y el usuario tiene que desplazarse a través de ellos. Una vez que se cambia el fondo de un elemento, aparece el color de fondo en los elementos recientemente visibles a medida que me desplazo. Además, el getChildAt(position)
devuelve null
(y por lo tanto un NullPointerException
) al hacer clic de nuevo en el elemento.
¿Alguien puede ayudarme con un código simple que me ayuda a cambiar el color de fondo de un elemento de la lista?
¡Gracias de antemano!
Creo que este tema le ayudará a hacer eso. http://stackoverflow.com/questions/2217753/changing-background-color-of-listview-items-on-android – thiagolsilva