Android相对布局不会滚动

时间:2014-06-21 08:58:58

标签: android-layout android-xml android-relativelayout

我的xml文件中有一个相对布局,其中我有另一个相对布局,其中包含我的所有内容。我的内部相对布局加载了来自我的数据库的内容。

此外,我在底部有一个edittext和按钮,用于添加评论。

现在的问题是,当内容较多时,我的内部相对布局不会滚动,但所有内容都隐藏在底部编辑文本和按钮内。

这是我的xml。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
        android:background="@color/BG"
        android:paddingTop="10dp" >

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:background="#FFFFFF"
        android:paddingLeft="15dp"
        android:paddingRight="15dp"
        android:paddingBottom="15dp"
        android:scrollbars="vertical" >

        <TextView
            android:id="@+id/discTitle"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentRight="true"
            android:layout_marginTop="20dp"
            android:text="Title"
            android:textColor="#77d3f1"
            android:textSize="18sp" />

        <TextView
            android:id="@+id/discCategory"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignRight="@+id/discTitle"
            android:layout_below="@+id/discTitle"
            android:layout_marginTop="20dp"
            android:text="Category"
            android:textColor="#77d3f1"
            android:textSize="14sp" />

        <TextView
            android:id="@+id/discDescription"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignRight="@+id/discCategory"
            android:layout_below="@+id/discCategory"
            android:layout_marginTop="20dp"
            android:text="Decsription"
            android:textColor="#908484"
            android:textSize="16sp" />

        <TextView
            android:id="@+id/discTime"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignRight="@+id/discDescription"
            android:layout_below="@+id/discDescription"
            android:layout_marginTop="20dp"
            android:text="yyyy mm dd hh:mm:ss"
            android:textSize="10sp" />
    </RelativeLayout>

    <EditText
        android:id="@+id/editText1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true"
        android:layout_marginRight="60dp"
        android:background="@drawable/commentbg"
        android:ems="10"
        android:hint="Type a comment..."
        android:inputType="textMultiLine"
        android:minHeight="40dp"
        android:paddingLeft="10dp"
        android:textStyle="italic" >

        <requestFocus />
    </EditText>

    <Button
        android:id="@+id/button1"
        android:layout_width="61dp"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentRight="true"
        android:background="@drawable/commentbg"
        android:minHeight="40dp"
        android:text="Send" />

</RelativeLayout>

现在我希望内部相对布局的高度占据整个屏幕并且必须是 当内容更多时可滚动。看看下面的图片。

提前致谢。Layout View

2 个答案:

答案 0 :(得分:1)

将其包装在ScrollView中

<ScrollView
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:id="@+id/scroll_view_layout">

    <RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_marginLeft="10dp"
    android:layout_marginRight="10dp"
    android:background="#FFFFFF"
    android:paddingLeft="15dp"
    android:paddingRight="15dp"
    android:paddingBottom="15dp"
    android:scrollbars="vertical" >

    <TextView
        android:id="@+id/discTitle"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true"
        android:layout_marginTop="20dp"
        android:text="Title"
        android:textColor="#77d3f1"
        android:textSize="18sp" />

    <TextView
        android:id="@+id/discCategory"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignRight="@+id/discTitle"
        android:layout_below="@+id/discTitle"
        android:layout_marginTop="20dp"
        android:text="Category"
        android:textColor="#77d3f1"
        android:textSize="14sp" />

    <TextView
        android:id="@+id/discDescription"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignRight="@+id/discCategory"
        android:layout_below="@+id/discCategory"
        android:layout_marginTop="20dp"
        android:text="Decsription"
        android:textColor="#908484"
        android:textSize="16sp" />

    <TextView
        android:id="@+id/discTime"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignRight="@+id/discDescription"
        android:layout_below="@+id/discDescription"
        android:layout_marginTop="20dp"
        android:text="yyyy mm dd hh:mm:ss"
        android:textSize="10sp" />
</RelativeLayout>

<EditText
    android:id="@+id/editText1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true"
    android:layout_marginRight="60dp"
    android:background="@drawable/commentbg"
    android:ems="10"
    android:hint="Type a comment..."
    android:inputType="textMultiLine"
    android:minHeight="40dp"
    android:paddingLeft="10dp"
    android:textStyle="italic" >

    <requestFocus />
</EditText>

<Button
    android:id="@+id/button1"
    android:layout_width="61dp"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_alignParentRight="true"
    android:background="@drawable/commentbg"
    android:minHeight="40dp"
    android:text="Send" />

 </RelativeLayout>
</ScrollView>

答案 1 :(得分:0)

要滚动内容,您需要添加ScrollView。 ScrollView将是您要滚动的布局的父级。 http://developer.android.com/reference/android/widget/ScrollView.html