2012-02-09 24 views
21

Esperemos que sea simple. v4.0.3ListView barra de desplazamiento Estilo con margen/relleno

Tengo un ListView y quiero dejar un margen de 10 dips a derecha e izquierda. El contenido es fácil, por supuesto, pero quiero que la línea divisoria tenga un margen de 10dips a la derecha y a la izquierda también.

Si añado android:PaddingRight o android:layout_marginRight a la ListView o la LinearLayout que contiene el ListView entonces funciona, por supuesto, pero la barra de desplazamiento de lista que aparece abajo a la derecha mientras se desplaza la lista también se mueve en el acolchado/margen distancia.

Quiero que el indicador de la barra de desplazamiento permanezca. He intentado todos los ajustes de android:scrollbarStyle.

+0

Puede también use: android: scrollbarStyle = "outsideOverlay". outsideInset coloca tu barra de desplazamiento fuera del relleno definido. "outsideOverlay" lo coloca dentro del relleno, es decir, se parece más a la aplicación google play. Esto también funciona en gridview por cierto. – Karl

+0

puede agregar una respuesta a su propia pregunta y marcarla como correcta –

Respuesta

10

puede hacer fácilmente

<ListView 
    android:id="@+id/lvDonorDetails" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:divider="@drawable/list_divider" 
    android:dividerHeight="1dp" 
    android:paddingLeft="10dp" 
    android:paddingRight="10dp" 
    android:scrollbarStyle="outsideInset"/> 

O

<ListView 
    android:id="@+id/lvDonorDetails" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:dividerHeight="1dp" 
    android:padding="10dp" 
    android:scrollbarStyle="outsideInset"/> 
0

que tenían el mismo problema de desplazamiento de la vista de lista. poner dentro de una vista de desplazamiento está limitando la vista de lista para cargar sólo una fila cuando queremos cargar la lista de forma dinámica, pero al final tiene la solución: incluyen

android:scrollbarAlwaysDrawVerticalTrack= "true" 

y

android:fadeScrollbars="false" 

propiedades en el interior la etiqueta ListView.

0

Puede crear una nueva barra de desplazamiento para dibujar con el pulgar qué desea sobre el margen y el margen extraíble de desplazamiento.

Uso éstos attr

android:scrollbarThumbHorizontal="@drawable/your_drawable" 
android:scrollbarThumbVertical="@drawable/your_drawable" 
0

Para tener las mismas márgenes (alrededor y entre) elementos de ListView sin tener la barra de desplazamiento superposición de los elementos de ListView, puede utilizar el siguiente código:

<ListView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:id="@+id/listView" 
    android:layout_gravity="center_horizontal|top" 
    android:dividerHeight="10dp" 
    android:divider="@android:color/transparent" 
    android:padding="10dp" 
    android:scrollbarStyle="outsideOverlay"/> 
Cuestiones relacionadas