2012-09-18 10 views
6

Actualmente estoy usando un diseño que contiene un RelativeLayout dentro de un ScrollView.Android paddingBottom no funciona sin rellenoTop

Quiero que el RelativeLayout a estar contenida 5DP lejos de la parte inferior de la ScrollView por lo que no se solapa con el fondo tengo detrás de él, para lograr esto yo estaba usando este XML:

<ScrollView 
    android:id="@+id/scrollView" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentRight="true" 
    android:layout_alignTop="@+id/backgroundView1" 
    android:fadingEdge="none" 
    android:scrollbars="none" 
    android:paddingTop="5dp" 
    android:paddingBottom="5dp"> 

    <RelativeLayout 
     android:id="@+id/innerLayout" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content"> 
    </RelativeLayout> 
</ScrollView> 

Esto funcionó a la perfección Sin embargo, ya no necesito el relleno en la parte superior. Al eliminar la línea paddingTop, el paddingBottom ya no funciona. Incluso si configuro el paddingBottom en 100dp, no muestra ningún efecto en mi diseño.

me trataron paddingTop = "0DP" y que no se soluciona el problema, ya sea, parece paddingBottom sólo funcionará cuando paddingTop está por encima de 0.

Alguien tiene alguna idea de por qué paddingBottom no funciona sin paddingTop?

+1

He intentado que el código y funciona cuando el relleno superior es cero. Usé un diseño relativo como el diseño principal. – Gan

Respuesta

0

usted escribió la propiedad xml androide: layout_alignParentBottom = "true" por lo que su ScrollView siempre se alineará inferior.

Eliminar android: layout_alignParentBottom = "true" y vuelva a intentarlo.

0

utiliza este tipo de diseño para scrollview y cámbialo de acuerdo a tus necesidades ... no uses el diseño relativo dentro de scrollview. Aquí se puede establecer cualquier altura tipo de imagen y todavía verá el relleno en la parte inferior sin ningún paddingTop

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/backgroundView1" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" > 

    <ScrollView 
     android:id="@+id/scrollView" 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_weight="1" 
     android:background="#cccccc" 
     android:paddingBottom="5dp" 
     android:scrollbars="none" > 

     <LinearLayout 
      android:id="@+id/innerLayout" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:orientation="vertical" > 

      <ImageView 
       android:layout_width="match_parent" 
       android:layout_height="700dp" 
       android:background="@android:color/transparent" 
       android:scaleType="fitXY" 
       android:src="@drawable/image2" /> 
     </LinearLayout> 
    </ScrollView> 

</LinearLayout> 
0

puede utilizar

android:layout_marginTop="10dip" 

o

android:layout_marginBottom="20dip" 
-1

Esto es para tener (5 dp) espacio en la parte superior e inferior

<ScrollView 
    android:id="@+id/scrollView" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentRight="true" 
    android:layout_alignTop="@+id/backgroundView1" 
    android:fadingEdge="none" 
    android:scrollbars="none" 
    android:paddingTop="5dp" 
    android:paddingBottom="5dp"> 

    <RelativeLayout 
     android:id="@+id/innerLayout" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="5dp" 
     android:layout_marginBottom="5dp"> 
    </RelativeLayout> 
</ScrollView> 

esto es para tener el espacio (5 dp) en la parte superior, inferior, izquierda y derecha

<ScrollView 
    android:id="@+id/scrollView" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentRight="true" 
    android:layout_alignTop="@+id/backgroundView1" 
    android:fadingEdge="none" 
    android:scrollbars="none" 
    android:paddingTop="5dp" 
    android:paddingBottom="5dp"> 

    <RelativeLayout 
     android:id="@+id/innerLayout" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_margin="5dp"> 
    </RelativeLayout> 
</ScrollView>