2012-09-18 11 views
6

Obecnie używam układu, który zawiera RelativeLayout wewnątrz ScrollView.Podkładka AndroidBottom nie działa bez wyściółki Top

chcę RelativeLayout mają być zawarte 5DP od dołu Scrollview więc nie pokrywają tło mam za sobą, do osiągnięcia tego celu używałem tego 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> 

To działało idealnie jednak nie potrzebuję już wyściółki u góry. Podczas usuwania linii paddingTop paddingBottom przestaje działać. Nawet jeśli ustawię paddingBottom na 100dp, nie będzie to miało wpływu na mój układ.

Próbowałem paddingTop = „0DP” i że nie rozwiąże problemu albo wydaje paddingBottom będzie działać tylko wtedy, gdy paddingTop jest powyżej 0.

ktoś ma jakieś pomysły, dlaczego paddingBottom nie działa bez paddingTop?

+1

Próbowałem ci kod i działa, gdy górna wyściółka jest zero. Użyłem układu względnego jako układu nadrzędnego. – Gan

Odpowiedz

0

Napisałeś właściwości XML android: layout_alignParentBottom = "true" więc Scrollview zawsze zostanie wyrównany dolny.

Usuń android: layout_alignParentBottom = "true" i spróbuj ponownie.

0

użyć tego rodzaju układu do przewijania i zmieniać zgodnie z potrzebami. Nie używaj względnego układu wewnątrz przewijania. Tutaj można ustawić dowolną wysokość typu w obrazie i nadal widać wyściółkę na dole bez 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

można użyć

android:layout_marginTop="10dip" 

lub

android:layout_marginBottom="20dip" 
-1

To jest dla posiadające (5 dp) miejsce na górze i na dole

<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> 

To za to, że (5 dp) przestrzeń na górze, na dole, z lewej iz prawej

<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>