2011-11-04 17 views

Respuesta

12

Haz un parche de 9 png que tenga píxeles transparentes a la izquierda y a la derecha. Por ejemplo, un 53x4 .9.png que tiene 25 píxeles transparentes a cada lado (+ píxeles a 9patch) extendería el píxel de 1 píxel por lo que hay 25 píxeles a cada lado.

0

Usted debe ser capaz de llamar

mListView.setDivider(Drawable d);

y pasarlo un estirable que se pueden incluir en sus res/carpetas dibujable. Si desea que se extienda casi por completo, puede hacer un parche de 9 que contenga una línea horizontal con tanta transparencia en los lados izquierdo y derecho como desee. Y configúrelo para estirar la parte media de la línea.

3

Si no desea hacer 9 parche, entonces se puede insertar

<View android:layout_width="fill_parent" android:layout_height="1dp" android:layout_marginTop="4dp" android:background="#33B5E5" />

en el código XML de list_item. Crea una línea azul y puede controlar fácilmente el ancho de esta línea. Para que esto tenga éxito, deberá deshabilitar el divisor de la vista de lista. Que se da here

+0

Dejar '' width' en match_parent' y establecer un margen izquierda o la derecha. –

49

A RecyclerView generalmente se prefiere sobre el uso de ListView ahora. Consulte this Q&A para saber cómo establecer el ancho del divisor en RecyclerView.

Uso <inset>

estirable/list_divider.xml

<inset xmlns:android="http://schemas.android.com/apk/res/android" 
    android:insetLeft="10dp" 
    android:insetRight="10dp" > 

    <shape android:shape="rectangle" > 
     <solid android:color="@color/list_divider_color" /> 
    </shape> 

</inset> 

Y en su diseño:

<ListView 
    android:id="@+id/listView1" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:cacheColorHint="#00000000" 
    android:divider="@drawable/list_divider" 
    android:dividerHeight="1dp" > 
</ListView> 

enter image description here

Fuentes:

+0

Intenté esto. Pero superpone mi divisor personalizado en el predeterminado. ¿Alguna idea de por qué? – Zen

+0

@Suragch lo siento por offtopic, pero no encontré ninguna mención en la documentación con respecto a la desaprobación 'ListView'. Entiendo tu pensamiento detrás de estas palabras, pero creo que podría confundir a alguien. Sin embargo, gran respuesta. – Viacheslav

+1

@Viacheslav, gracias. Corregí mi redacción. – Suragch

Cuestiones relacionadas