Est-il possible d'appliquer un arrière-plan personnalisé pour chaque élément de liste via le sélecteur liste?
Le sélecteur par défaut spécifie @android:color/transparent
de la state_focused="false"
des cas, mais en changeant de cet personnalisé drawable n'affecte pas les éléments qui ne sont pas sélectionnés. Romain Guy semble suggérer dans cette réponse, que cela est possible.
Je suis en train de réaliser le même effet en utilisant un arrière-plan personnalisé sur chaque point de vue et de le cacher lorsque l'élément est sélectionné/concentré/peu importe si le sélecteur est indiqué, mais il serait plus élégant d'avoir ce tous définis dans un seul endroit.
Pour référence, c'est le sélecteur j'utilise pour essayer et obtenir de ce travail:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="false"
android:drawable="@drawable/list_item_gradient" />
<!-- Even though these two point to the same resource, have two states so the drawable will invalidate itself when coming out of pressed state. -->
<item android:state_focused="true" android:state_enabled="false"
android:state_pressed="true"
android:drawable="@drawable/list_selector_background_disabled" />
<item android:state_focused="true" android:state_enabled="false"
android:drawable="@drawable/list_selector_background_disabled" />
<item android:state_focused="true" android:state_pressed="true"
android:drawable="@drawable/list_selector_background_transition" />
<item android:state_focused="false" android:state_pressed="true"
android:drawable="@drawable/list_selector_background_transition" />
<item android:state_focused="true"
android:drawable="@drawable/list_selector_background_focus" />
</selector>
Et ce est la façon dont je suis le réglage du sélecteur:
<ListView
android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:listSelector="@drawable/list_selector_background" />
Merci d'avance pour toute aide!