滚动视图不显示底部

问题描述:

我有这个相对布局,它有一个滚动视图。但是当滚动视图中包含更多文本时,它不会显示底部文本,它会放在我的按钮后面。我怎样才能解决这个问题?滚动视图不显示底部

这里是我做了什么:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="#00AEEC" 
    android:orientation="vertical" 
    android:weightSum="100" > 

    <RelativeLayout 
     android:id="@+id/details_header" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_gravity="clip_horizontal" 
     android:background="#00AEEC" 
     android:padding="20dp" > 



     <ImageView 
      android:id="@+id/imageView1" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:layout_alignParentTop="true" 
      android:layout_centerHorizontal="true" 
      android:src="@drawable/onlywithalcohol_heading_page2" /> 

    </RelativeLayout> 

<RelativeLayout 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_below="@+id/details_header" 
    android:layout_centerHorizontal="true" 
    android:layout_margin="20dp" > 

    <TextView 
     android:id="@+id/details_country" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentTop="true" 
     android:layout_centerHorizontal="true" 
     android:layout_marginBottom="20dp" 
     android:text="USA" 
     android:textAlignment="center" 
     android:textAppearance="?android:attr/textAppearanceMedium" /> 

    <TextView 
     android:id="@+id/details_title" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@id/details_country" 
     android:layout_centerHorizontal="true" 
     android:layout_marginBottom="20dp" 
     android:gravity="center_horizontal" 
     android:text="Fastest Time To Drink A Pint Of Soda Water, Consume A Bowl Of Macaroni And Cheese With Chopsticks, Eat And Read A Fortune Cookie And Take A Shot Of Peach Schnapps " 
     android:textAlignment="center" 
     android:textAppearance="?android:attr/textAppearanceMedium" 
     android:textColor="#FFFF00" /> 

    <ScrollView 
     android:layout_width="fill_parent" 
     android:layout_height="200dp" 
     android:layout_alignParentBottom="true" 
     android:layout_below="@id/details_title" 
     android:layout_centerHorizontal="true" > 

     <TextView 
      android:id="@+id/details_description" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_marginBottom="20dp" 
      android:gravity="center_horizontal" 
      android:paddingLeft="10dp" 
      android:paddingRight="10dp" 
      android:text="Sam Birdsong removed a cork from an empty bottle of wine using just a napkin in two minutes, 55.47 seconds.He stipulated beforehand that he had to begin with an unopened bottle, uncork it and pour out the wine, then shove the cork back inside the bottle and pull it out with a cloth napkin" 
      android:textAlignment="center" 
      android:textAppearance="?android:attr/textAppearanceMedium" /> 
    </ScrollView> 
</RelativeLayout> 

<LinearLayout 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:layout_centerHorizontal="true" 
    android:layout_margin="10dp" 
    android:background="#00AEEC" 
    android:orientation="vertical" > 

    <Button 
     android:id="@+id/details_back_btn" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center" 
     android:padding="10dp" 
     android:text="@string/back_btn" 
     android:textSize="18sp" 
     android:textStyle="bold" /> 
</LinearLayout> 

</RelativeLayout> 
+0

你必须使用RelativeLayout吗?为什么不使用LinearLayout它应该为你工作 – 2013-02-19 15:02:14

+0

@Saksak现在我使用线性布局,但我的按钮是关闭屏幕... – 2013-02-19 15:10:38

+0

检查我的答案下面 – 2013-02-19 15:19:10

更改您的布局是LinearLayout中,它应该为你工作,你可能需要使用

android:gravity="bottom" 

到在对齐按钮屏幕的最底部

,你可能需要使用

android:layout_weight="" 

如果需要。

这里要说的是,你可以在LinearLayout内放置与垂直方向的块:

<ImageView 
    android:id="@+id/imageView1" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentTop="true" 
    android:layout_centerHorizontal="true" 
    android:src="@drawable/ic_launcher" /> 

<TextView 
    android:id="@+id/details_country" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentTop="true" 
    android:layout_centerHorizontal="true" 
    android:layout_marginBottom="20dp" 
    android:text="USA" 
    android:textAlignment="center" 
    android:textAppearance="?android:attr/textAppearanceMedium" /> 

<TextView 
    android:id="@+id/details_title" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_below="@id/details_country" 
    android:layout_centerHorizontal="true" 
    android:layout_marginBottom="20dp" 
    android:gravity="center_horizontal" 
    android:text="Fastest Time To Drink A Pint Of Soda Water, Consume A Bowl Of Macaroni And Cheese With Chopsticks, Eat And Read A Fortune Cookie And Take A Shot Of Peach Schnapps " 
    android:textAlignment="center" 
    android:textAppearance="?android:attr/textAppearanceMedium" 
    android:textColor="#FFFF00" /> 

<ScrollView 
    android:layout_width="fill_parent" 
    android:layout_height="200dp" 
    android:layout_alignParentBottom="true" 
    android:layout_below="@id/details_title" 
    android:layout_centerHorizontal="true" > 

    <TextView 
     android:id="@+id/details_description" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginBottom="20dp" 
     android:gravity="center_horizontal" 
     android:paddingLeft="10dp" 
     android:paddingRight="10dp" 
     android:text="Sam Birdsong removed a cork from an empty bottle of wine using just a napkin in two minutes, 55.47 seconds.He stipulated beforehand that he had to begin with an unopened bottle, uncork it and pour out the wine, then shove the cork back inside the bottle and pull it out with a cloth napkin , and this wilk take for ever and ever out the wine, then shove the cork back inside the bottle and pull it out with a cloth napkin , and this wilk take for ever and ever out the wine, then shove the cork back inside the bottle and pull it out with a cloth napkin , and this wilk take for ever and ever out the wine, then shove the cork back inside the bottle and pull it out with a cloth napkin , and this wilk take for ever and ever " 
     android:textAlignment="center" 
     android:textAppearance="?android:attr/textAppearanceMedium" /> 
</ScrollView> 

<Button 
    android:id="@+id/details_back_btn" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center" 
    android:layout_weight="" 
    android:gravity="bottom" 
    android:padding="10dp" 
    android:text="back" 
    android:textSize="18sp" 
    android:textStyle="bold" /> 

添加ID到的LinearLayout包含按钮,例如:

android:id="@+id/bottomLayout" 

使用此在包含scrollView的RelativeLayout:

android:layout_above="@+id/bottomLayout" 

注意th在20dp的底部空白处,如果你不需要它,你可以使用android:layout_marginLeft,android:layout_marginRight和android:layout_marginTop来确保你在其他地方有20dp的空白。