studio recyclerview recycler cardview android android-listview divider

cardview - recyclerview divider android studio



Margen divisor de Listview (5)

El recuadro es el camino a seguir

<?xml version="1.0" encoding="UTF-8"?> <inset xmlns:android="http://schemas.android.com/apk/res/android" android:insetLeft="15dp" android:insetRight="15dp" > <shape android:shape="line" > <stroke android:dashGap="1dp" android:dashWidth="1.5dp" android:width="1dp" android:color="#FF404040" /> <size android:height="3dp" /> </shape> </inset>

Estoy tratando de establecer un margen para un divisor listview .
El divisor es una línea discontinua:

<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="line" > <stroke android:dashGap="1dp" android:dashWidth="1.5dp" android:width="1dp" android:color="#FF404040" /> <size android:height="3dp" /> </shape>

y una lista donde establezco el divisor

<ListView android:id="@+id/lv_news_feed_list" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@color/white" android:divider="@drawable/ch_dashed_line_divider" />

pero quiero un margen divisor a la izquierda y a la derecha . También traté de establecer un relleno para la forma, pero la vista de lista ignora el relleno.

<padding android:bottom="15dp" android:left="15dp" android:right="15dp" android:top="15dp" />

¿Hay alguna posibilidad de establecer un margen para el divisor listview , excepto en el getView () del adaptador?


No creo que sea posible: / Aunque si agrega su propio dibujo en la parte inferior de cada elemento de la lista y elimina el divisor ListViews, puede personalizarlo como desee :)

Crea la carpeta res / dibujable y crea un nuevo xml:

<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" > <solid android:color="#666666"></solid> </shape>

Luego, usa ese dibujo en tu lista de elementos.

O una manera muy rápida y sucia podría crear un LinearLayout delgado (o algún otro diseño) con fondo de color en la parte inferior del elemento de la lista para simular un divisor ListView personalizable.

No es una solución adecuada, solo algunas ideas de reparación;)


Puedes usar la siguiente idea:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item> <shape android:shape="rectangle"> <solid android:color="@color/table_background"/> </shape> </item> <item android:left="2dp" android:right="2dp"> ... your shape here ... </item> </layer-list>

Esto funciona para mi. Espero que ayude


U puede usar Gradiente para obtener el margen derecho e izquierdo en lugar de un trazo. Pruebe con esta muestra que comienza y termina con negro, en el centro obtendrá blanco. Parece que ha dado margen

<gradient android:startColor="#000000" android:centerColor="#ffffff" android:endColor="#000000" />


Use ''recuadro'' .....

(list_divider.xml)

<?xml version="1.0" encoding="UTF-8"?> <inset xmlns:android="http://schemas.android.com/apk/res/android" android:insetLeft="50dp" android:insetRight="50dp" > <shape> <solid android:color="@color/orange" /> <corners android:radius="2.0dip" /> </shape> </inset>

y en tu vista de lista agrega así ...

<ListView android:dividerHeight="2dp" android:divider="@drawable/list_divider" ... />

puede establecer el valor del recuadro como lo desee ...