studio programacion móviles libros español desarrollo desarrollar curso aprende aplicaciones android listview divider

android - programacion - Línea negra debajo de algunos elementos de ListView



manual programacion android español pdf (3)

Problema interesante que estoy teniendo con un ListView. Está utilizando un ArrayAdapter estándar, con un diseño XML personalizado para los elementos que contiene. XML simple:

<?xml version="1.0" encoding="utf-8"?> <TextView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@android:id/text1" android:background="@drawable/list_bg_blue" android:layout_width="fill_parent" android:layout_height="wrap_content" android:paddingTop="20dp" android:paddingBottom="20dp" android:typeface="serif" android:textSize="20px" android:textStyle="bold|italic" android:textColor="#FF1e5a82" android:shadowColor="#FFFFFFFF" android:shadowDx="1" android:shadowDy="1" android:shadowRadius="1" />

No creo que haya nada allí que sea un problema, pero aparecen algunas líneas negras extrañas de las que parece que no puedo deshacerme (puedes verlo en la imagen de abajo). He intentado configurar android:dividerHeight="0px" en el ListView, pero estos siguen apareciendo. Puedes ver entre Nuevos Episodios y Espectáculos que no hay una línea, pero por alguna razón hay después del primero y el último.

¿Algunas ideas?

EDITAR: Pensé un poco más, parece ser solo el primero y el último, así que encontré:

android:headerDividersEnabled y android:footerDividersEnabled

Establecer los pies de página en falso corrigió el último, pero, de forma extraña, establecer divisores de encabezado en falso no tuvo ningún efecto. : /

¡INCLUSO MÁS EDICIONES !: Bueno, entonces agregué algunos elementos más a la lista (debería haberlo hecho primero), y parece que todos los demás elementos (por ejemplo, el artículo 1, el artículo 3, el artículo 5, etc.) tienen un divisor que aparece debajo de él.


Odio responder a mi propia pregunta, pero encontré una solución:

ListView lv = getListView(); lv.setDivider(null);

Esto solucionó el problema. Sin embargo, todavía me gustaría saber una forma de hacer esto con XML y entender por qué los está insertando solo en cada otro elemento.


Puedes configurarlo en xml con: android: divider = "@ null"


Tu puedes decir

<ListView ... android:divider="@null" ... />

El divisor debe insertarse después de cada entrada por defecto.