2013-05-29 1 views
0

Je rencontre des problèmes avec les éléments ListView. J'utilise listSelector pour cela. J'ai besoin d'un élément qui change d'arrière-plan lorsque j'appuie dessus. Mais quand j'appuie dessus, tous les éléments changent d'arrière-plan. Il se produit sur Android 2.3.6. À 4.0.3 et plus, cela fonctionne bien.ListView éléments fond problème

ListSelector

<selector xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/defaultSelector"> 
<item android:drawable="@color/defaultDashboardItemBackground" android:state_enabled="false" android:state_focused="true" android:state_pressed="false"/> 
<item android:drawable="@color/defaultDashboardItemHover" android:state_pressed="true"/> 
<item android:drawable="@color/defaultDashboardItemBackground" android:state_focused="true" android:state_pressed="false"/> 

Certains Code

ListView list = (ListView) act.findViewById(R.id.menu_listview); 
list.setBackgroundColor(act.getResources().getColor(getThemeBackground(theme))); 
list.setSelector(act.getResources().getDrawable(getThemeSelector(theme))); 
list.addHeaderView(createHeader("HEADER")); 
list.setAdapter(adap); 

Répondre

0

Définissez cet attribut à votre listview android:cacheColorHint="@null" Cela peut aider à résoudre.

+0

Merci, mais cela ne fonctionne pas :( – asmproger

0
<ListView 
    android:id="@android:id/list" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:cacheColorHint="#00000000" 
    android:listSelector="#00000000" 
    android:fadingEdge="none"/> 

Et ne définissez pas de couleur d'arrière-plan dans ListView. Définissez la couleur d'arrière-plan (Sélecteur) ou Image (Sélecteur) dans la disposition racine listitem.xml.

J'espère que cela vous aidera.

+0

Merci, mais cela ne fonctionne pas :( – asmproger