ScrollView应该只有一个孩子

时间:2015-03-30 13:56:09

标签: android android-layout android-scrollview

我有一个ScrollView,其中一个RelativeLayout作为直接子项,并且里面有多个布局。但是,在运行时,应用程序崩溃,说ScrollView只能有一个直接子项。我犯的错是什么 附:对不起,如果问题很愚蠢,我没有使用Android编程的经验。

<ScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.appex.android.inquisitor.QuestionActivity"
android:background="@drawable/bg" >
<RelativeLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content">
    <TextView
        android:textStyle="bold"
        android:id="@+id/textviewname"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:layout_marginTop="150dp"
        android:textColor="@color/text2"
        android:textSize="13pt"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true" />

    <EditText
        android:id="@+id/edittext1"
        android:layout_width="fill_parent"
        android:maxLines="1"
        android:layout_height="wrap_content"
        android:inputType="text"
        android:textSize="12pt"
        android:textColor="@color/text2"
        android:imeOptions="actionDone"
        android:layout_gravity="center"
        android:layout_below="@+id/textviewname"
        android:layout_marginTop="15dp"

    />
    <TextView
        android:layout_width="wrap_content"
        android:textStyle="bold"
        android:layout_height="wrap_content"
        android:id="@+id/hintview"
        android:textSize="12pt"
        android:textColor="@color/text2"
        android:layout_below="@+id/edittext1"
        android:layout_marginTop="10dp"
        android:layout_centerHorizontal="true" />
    <Button
        android:id="@+id/done_button"
        android:textSize="12pt"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textStyle="bold"
        android:text="@string/done_button"
        android:background="@android:color/transparent"
        android:textColor="@color/text2"
        android:layout_alignTop="@+id/hintbutton"
        android:layout_marginLeft="189dp"/>
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="12pt"
        android:textStyle="bold"
        android:id="@+id/hintbutton"
        android:text="@string/hintbutton"
        android:background="@android:color/transparent"
        android:textColor="@color/text2"
        android:layout_marginLeft="101dp"
        android:layout_marginTop="14dp"
        android:layout_below="@+id/hintview"
         />
    <TextView
        android:id="@+id/attemptview"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textColor="@color/text2"
        android:textSize="10pt"
        android:layout_marginTop="75dp"
        android:layout_alignLeft="@+id/done_button"
        android:layout_alignStart="@+id/done_button"
    />
</RelativeLayout>
</ScrollView>

2 个答案:

答案 0 :(得分:0)

您应该使用wrap_content将scrollView中的所有内容包装在LinearLayout中作为高度。

这个问题已在这里得到解答:

Scrollview can host only one direct child

答案 1 :(得分:0)

尝试在ScrollingView之前添加相对布局。