J'ai parcouru les interwebs et trouvé de nombreux messages sur la façon de changer les couleurs d'une vue de liste en utilisant un sélecteur de liste. Cependant, cela ne semble pas fonctionner pour moi. Donc, ma question serait ce que je fais mal? Lorsque j'utilise les fichiers ci-dessous, j'obtiens une liste où tous les arrière-plans de l'article sont initialement bleus. (Je m'attendais à un blanc)Personnalisation des couleurs ListView Android?
Lorsque je déplace la mise au point de haut en bas, le texte devient gris foncé et les arrière-plans sont toujours bleus. (C'est quand je m'attendrais à ce qu'une seule ligne soit bleue avec le reste blanc)
Lorsque je clique sur une rangée, l'arrière-plan de la rangée sur laquelle j'ai cliqué devient noir et toutes les autres lignes sont devenues vertes. (Je devrait avoir la ligne que je cliqué devient vert et le reste est blanc)
Voici mon fichier de mise en page:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<ListView
android:id="@android:id/list"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:listSelector="@drawable/item_selector"
/>
<TextView
android:id="@android:id/empty"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/empty"
/>
</LinearLayout>
Voici mon fichier élément de la liste:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal"
android:padding="10sp">
<CheckBox
android:id="@+id/checkbox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="false"
/>
<TextView
android:id="@+id/title"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:ellipsize="end"
android:singleLine="true"
android:textStyle="bold"
android:padding="7dip"
android:textSize="18sp"
android:layout_toRightOf="@id/checkbox"
/>
</RelativeLayout>
ici est mes couleurs fichier:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="red">#ff00</color>
<color name="green">#f0f0</color>
<color name="blue">#f00f</color>
<color name="white">#ffff</color>
</resources>
Voici mon fichier de sélection:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_pressed="true"
android:drawable="@color/green" />
<item
android:state_focused="true"
android:drawable="@color/blue" />
<item
android:drawable="@color/white" />
</selector>
Espérons que c'est quelque chose de stupide et simple que je fais mal.
Merci d'avance.
il semble que toute la liste elle-même est en train d'être mise au point à la place des éléments individuels de la liste. – YGL