2011-05-24 12 views
9

Necesito estilo ListView y no puedo entender por qué se convierte en fondo negro cuando se desplaza ... Tengo ListView dentro de LinearLayout y ese diseño tiene Fondo configurado en la imagen.Problema de estilo de lista de Android con el fondo mientras se desplaza

Esto es lo que tengo para ListView:

<style name="MyListView" parent="@android:style/Widget.ListView"> 
     <item name="android:listSelector">@drawable/selector_list_item</item> 
    </style> 

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_enabled="false" android:state_focused="true" 
      android:drawable="@drawable/shape_list_item_normal" /> 
    <item android:state_pressed="true" 
      android:drawable="@drawable/shape_list_item_pressed" /> 
    <item android:state_focused="true" 
      android:drawable="@drawable/shape_list_item_normal" /> 
</selector> 

<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> 
    <gradient android:startColor="#80ffffff" android:endColor="#80eff3ef" android:angle="45" /> 
    <padding android:left="5dip" android:right="5dip" android:top="7dip" android:bottom="7dip"/> 
</shape> 

<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> 
    <gradient android:startColor="#80808080" android:endColor="#80eff3ef" android:angle="45" /> 
    <padding android:left="5dip" android:right="5dip" android:top="7dip" android:bottom="7dip"/> 
</shape> 

Cuando aplico estilo MyListView no veo mucho sitio. Cuando hago clic en el elemento, sí, veo el degradado. Cuando ListView estable: veo el fondo como debería ser desde el diseño principal. Cuando me desplazo - Veo fondo negro, está borrando el fondo de los padres. Y yo estaría de acuerdo con eso si sabía cómo configurarlo con otra cosa ..

Respuesta

0

Pruebe esta línea de código en el xml de la vista de lista:

androide: listSelector = "@ android: el color/transparente "

8

Utilice la siguiente propiedad en el xml de vista de lista:

android:cacheColorHint="@android:color/transparent" 
0

Si necesita transparente ListView en un PreferenceActivity, trate de usar un tema con

<resources> 

    <style name="MyPreferencesTheme"> 
     <item name="android:scrollingCache">false</item> 
    </style> 

</resources> 

Y poner el tema en su AndroidManifest.xml

<activity 
    android:name="YourActivity" 
    android:theme="@style/MyPreferencesTheme"> 
</activity> 
Cuestiones relacionadas