添加ScrollView

时间:2016-09-16 15:24:28

标签: android scrollview relativelayout

我正在添加一个ScrollView作为RelativeLayout的父级,但是当我这样做时,我的RelativeLayout限制在一个小区域,我无法改变它。
当我改变填充时,我可以将它们固定在它们的位置,但这不是一个好方法。

这是我的代码:

<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/relatOne"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent">


        <RelativeLayout
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:paddingBottom="20dp"
            android:paddingLeft="20dp"
            android:paddingRight="20dp"
            android:paddingTop="20dp">


            <!--textArea Title-->
            <EditText
                android:id="@+id/textArea"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_alignParentTop="true"
                android:layout_toRightOf="@id/textView"
                android:hint="Write your message here!"
                android:linksClickable="true"
                android:maxLines="6"
                android:paddingLeft="20dp"
                android:scrollbars="vertical"
                android:textColorHint="#8e8e8e" />


            <TextView
                android:id="@+id/textView"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignBaseline="@id/textArea"
                android:layout_alignParentLeft="true"
                android:layout_alignParentStart="true"
                android:text="Text:"
                android:textColor="@color/textAreaTitle"
                android:textSize="20sp" />


            <Button
                android:id="@+id/button"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_alignParentBottom="true"
                android:background="@color/btnColor"
                android:onClick="btnSetter"
                android:text="Set on Channel"
                android:textAllCaps="false"
                android:textColor="#ffffffff"
                android:textSize="20sp"
                android:textStyle="bold"
                />


        </RelativeLayout>

    </ScrollView>
</RelativeLayout>

2 个答案:

答案 0 :(得分:0)

您应该将ScrollView作为父Root元素而不是像您的Case中的Child一样改变您的布局

  <?xml version="1.0" encoding="utf-8"?>


<ScrollView android:layout_width="match_parent"
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_height="match_parent"
    android:fillViewport="true">


        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_gravity="center"
            android:orientation="vertical"
            android:gravity="center">


            <!--textArea Title-->
            <EditText
                android:id="@+id/textArea"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="20dp"
                android:layout_marginBottom="20dp"

                android:hint="Write your message here!"
                android:linksClickable="true"
                android:maxLines="6"
                android:paddingLeft="20dp"
                android:scrollbars="vertical"
                android:textColorHint="#8e8e8e" />


            <TextView
                android:id="@+id/textView"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginTop="20dp"
                android:layout_marginBottom="20dp"
                android:layout_alignBaseline="@id/textArea"
                android:layout_alignParentLeft="true"
                android:layout_alignParentStart="true"
                android:text="Text:"

                android:textSize="20sp" />


            <Button
                android:id="@+id/button"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_alignParentBottom="true"
                android:layout_marginTop="20dp"
                android:layout_marginBottom="20dp"
                android:background="#000"
                android:onClick="btnSetter"
                android:text="Set on Channel"
                android:textAllCaps="false"
                android:textColor="#ffffffff"
                android:textSize="20sp"
                android:textStyle="bold"
                />


        </LinearLayout>

    </ScrollView>

根据需要更改线性布局重力和边距

答案 1 :(得分:0)

Screenshot of problem

在将ScrollView设置为root父级后,我现在遇到了这个问题。