2011-07-06 19 views
71

Tengo un ListView con relleno a la derecha (e izquierda).Reposicionar barra de desplazamiento de ListView con relleno

Actualmente la lista se ve algo como esto:

----------------- | 
| ROW   | | | 
|-------------| | | 
| ROW   | | | 
|-------------|#| | 
| ROW   |#| | 
|-------------| | | 
| ROW   | | | 
----------------- | 

Cuando el más a la derecha línea es el borde de la pantalla, con los # s siendo la barra de desplazamiento y el espacio en blanco a la derecha de él que es el ListView 's relleno a la derecha.

Lo que es para la barra de desplazamiento para estar a la derecha del acolchado así:

    _ 
----------------- | | 
| ROW   | | | 
|---------------| | | 
| ROW   | |#| 
|---------------| |#| 
| ROW   | |#| 
|---------------| | | 
| ROW   | | | 
----------------- |_| 

¿Es posible mover la barra de desplazamiento así o voy a tener que cambiar los diseños para cada fila de tiene un borde invisible del tamaño correcto?

Nota actualmente cada fila tiene un fondo separado establecido por el adaptador, ya que estoy haciendo una ventana flotante para mi ListView y desafortunadamente una de mis pantallas requiere que haga esto para que se vea como yo quiero .

+2

para aclarar a los lectores del futuro: ' outsideOverlay' no cambia la posición horizontal de los elementos en la lista; 'outsideInset' agrega algo de relleno, moviendo el borde derecho de los elementos en un momento. –

Respuesta

155

Prueba esto:

<ListView 
    ... 
    android:scrollbarStyle="outsideOverlay" /> 
+0

Si uso esto, mi barra de desplazamiento ya no se muestra. Simplemente desaparece – Janusz

+2

Utilicé android: scrollbarStyle = "outsideInset", funciona bien en HTC Desire pero no en Galaxy S. Amablemente ayúdame a solucionar esto. – Nuraiz

+0

+1. Y si no funcionó con usted, asegúrese de que NO está utilizando ningún atributo de margen en el ListView. – iTurki

31

Agregar a su vista de lista

android:scrollbarStyle="outsideInset" 

que añadirá un poco de relleno y la barra de desplazamiento estará fuera

+1

Funcionó para mí mejor que el otro ... –

+0

Quiero tener relleno en el lado derecho. Esta solución no funciona para mí – Bunny

Cuestiones relacionadas