web-dev-qa-db-fra.com

Scrollview ne peut héberger qu'un seul enfant direct

J'ai plusieurs LinearLayouts avec une hauteur combinée qui dépasse facilement la hauteur de l'écran d'un périphérique. Donc, afin de faire défiler ma mise en page, j'ai essayé d'ajouter un ScrollView, mais malheureusement, l'erreur suivante apparaît:

Scrollview ne peut héberger qu'un seul enfant direct

J'ai fait des recherches, mais je ne savais pas vraiment comment résoudre ce problème, même après avoir lu quelques solutions. J'ai essayé quelques changements, mais rien n'a fonctionné pour moi jusqu'à présent. De l'aide?

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

<ScrollView xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width="fill_parent"
Android:layout_height="fill_parent"
Android:orientation="vertical" >

    <LinearLayout 
    Android:layout_width="match_parent"
    Android:layout_height="wrap_content"
    Android:orientation="horizontal"
    Android:paddingTop="20dip">
    <TextView
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text="Question 1"
        Android:paddingBottom="20dip"
        Android:gravity="center" />
    <TextView
        Android:id="@+id/q1_score"
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text=""
        Android:gravity="center"/>
</LinearLayout>
<LinearLayout 
    Android:layout_width="match_parent"
    Android:layout_height="wrap_content"
    Android:orientation="horizontal">
    <TextView
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text="Question 2"
        Android:paddingBottom="20dip"
        Android:gravity="center" />
    <TextView
        Android:id="@+id/q2_score"
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text=""
        Android:gravity="center"/>
</LinearLayout>
<LinearLayout 
    Android:layout_width="match_parent"
    Android:layout_height="wrap_content"
    Android:orientation="horizontal">
    <TextView
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text="Question 3"
        Android:paddingBottom="20dip"
        Android:gravity="center" />
    <TextView
        Android:id="@+id/q3_score"
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text=""
        Android:gravity="center"/>
</LinearLayout>
<LinearLayout 
    Android:layout_width="match_parent"
    Android:layout_height="wrap_content"
    Android:orientation="horizontal">
    <TextView
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text="Question 4"
        Android:paddingBottom="20dip"
        Android:gravity="center" />
    <TextView
        Android:id="@+id/q4_score"
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text=""
        Android:gravity="center"/>
</LinearLayout>
<LinearLayout 
    Android:layout_width="match_parent"
    Android:layout_height="wrap_content"
    Android:orientation="horizontal">
    <TextView
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text="Question 5"
        Android:paddingBottom="20dip"
        Android:gravity="center" />
    <TextView
        Android:id="@+id/q5_score"
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text=""
        Android:gravity="center"/>
</LinearLayout>
    <LinearLayout 
    Android:layout_width="match_parent"
    Android:layout_height="wrap_content"
    Android:orientation="horizontal">
    <TextView
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text="Question 6"
        Android:paddingBottom="20dip"
        Android:gravity="center" />
    <TextView
        Android:id="@+id/q6_score"
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text=""
        Android:gravity="center"/>
</LinearLayout>        <LinearLayout 
    Android:layout_width="match_parent"
    Android:layout_height="wrap_content"
    Android:orientation="horizontal">
    <TextView
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text="Question 7"
        Android:paddingBottom="20dip"
        Android:gravity="center" />
    <TextView
        Android:id="@+id/q7_score"
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text=""
        Android:gravity="center"/>
</LinearLayout>
        <LinearLayout 
    Android:layout_width="match_parent"
    Android:layout_height="wrap_content"
    Android:orientation="horizontal">
    <TextView
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text="Question 8"
        Android:paddingBottom="20dip"
        Android:gravity="center" />
    <TextView
        Android:id="@+id/q8_score"
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text=""
        Android:gravity="center"/>
</LinearLayout>
        <LinearLayout 
    Android:layout_width="match_parent"
    Android:layout_height="wrap_content"
    Android:orientation="horizontal">
    <TextView
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text="Question 9"
        Android:paddingBottom="20dip"
        Android:gravity="center" />
    <TextView
        Android:id="@+id/q9_score"
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text=""
        Android:gravity="center"/>
</LinearLayout>
        <LinearLayout 
    Android:layout_width="match_parent"
    Android:layout_height="wrap_content"
    Android:orientation="horizontal">
    <TextView
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text="Question 10"
        Android:paddingBottom="20dip"
        Android:gravity="center" />
    <TextView
        Android:id="@+id/q10_score"
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text=""
        Android:gravity="center"/>
</LinearLayout>
        <LinearLayout 
    Android:layout_width="match_parent"
    Android:layout_height="wrap_content"
    Android:orientation="horizontal">
    <TextView
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text="Question 11"
        Android:paddingBottom="20dip"
        Android:gravity="center" />
    <TextView
        Android:id="@+id/q11_score"
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text=""
        Android:gravity="center"/>
</LinearLayout>
        <LinearLayout 
    Android:layout_width="match_parent"
    Android:layout_height="wrap_content"
    Android:orientation="horizontal">
    <TextView
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text="Question 12"
        Android:paddingBottom="20dip"
        Android:gravity="center" />
    <TextView
        Android:id="@+id/q12_score"
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text=""
        Android:gravity="center"/>
</LinearLayout>
        <LinearLayout 
    Android:layout_width="match_parent"
    Android:layout_height="wrap_content"
    Android:orientation="horizontal">
    <TextView
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text="Question 13"
        Android:paddingBottom="20dip"
        Android:gravity="center" />
    <TextView
        Android:id="@+id/q13_score"
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text=""
        Android:gravity="center"/>
</LinearLayout>
        <LinearLayout 
    Android:layout_width="match_parent"
    Android:layout_height="wrap_content"
    Android:orientation="horizontal">
    <TextView
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text="Question 14"
        Android:paddingBottom="20dip"
        Android:gravity="center" />
    <TextView
        Android:id="@+id/q14_score"
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text=""
        Android:gravity="center"/>
</LinearLayout>
        <LinearLayout 
    Android:layout_width="match_parent"
    Android:layout_height="wrap_content"
    Android:orientation="horizontal">
    <TextView
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text="Question 15"
        Android:paddingBottom="20dip"
        Android:gravity="center" />
    <TextView
        Android:id="@+id/q15_score"
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text=""
        Android:gravity="center"/>
</LinearLayout>
        <LinearLayout 
    Android:layout_width="match_parent"
    Android:layout_height="wrap_content"
    Android:orientation="horizontal">
    <TextView
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text="Question 16"
        Android:paddingBottom="20dip"
        Android:gravity="center" />
    <TextView
        Android:id="@+id/q16_score"
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text=""
        Android:gravity="center"/>
</LinearLayout>
        <LinearLayout 
    Android:layout_width="match_parent"
    Android:layout_height="wrap_content"
    Android:orientation="horizontal">
    <TextView
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text="Question 17"
        Android:paddingBottom="20dip"
        Android:gravity="center" />
    <TextView
        Android:id="@+id/q17_score"
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text=""
        Android:gravity="center"/>
</LinearLayout>
        <LinearLayout 
    Android:layout_width="match_parent"
    Android:layout_height="wrap_content"
    Android:orientation="horizontal">
    <TextView
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text="Question 18"
        Android:paddingBottom="20dip"
        Android:gravity="center" />
    <TextView
        Android:id="@+id/q18_score"
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text=""
        Android:gravity="center"/>
</LinearLayout>
        <LinearLayout 
    Android:layout_width="match_parent"
    Android:layout_height="wrap_content"
    Android:orientation="horizontal">
    <TextView
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text="Question 19"
        Android:paddingBottom="20dip"
        Android:gravity="center" />
    <TextView
        Android:id="@+id/q19_score"
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text=""
        Android:gravity="center"/>
</LinearLayout>
        <LinearLayout 
    Android:layout_width="match_parent"
    Android:layout_height="wrap_content"
    Android:orientation="horizontal">
    <TextView
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text="Question 20"
        Android:paddingBottom="20dip"
        Android:gravity="center" />
    <TextView
        Android:id="@+id/q20_score"
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text=""
        Android:gravity="center"/>

<LinearLayout 
    Android:layout_width="match_parent"
    Android:layout_height="wrap_content"
    Android:orientation="horizontal">
    <TextView
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text="Score:"
        Android:paddingBottom="20dip"
        Android:gravity="center" />
    <TextView
        Android:id="@+id/final_score"
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text="0/5"
        Android:gravity="center"/>
</LinearLayout>
    </LinearLayout>
        </ScrollView>
59
user2407147

Enveloppez tous les enfants à l'intérieur d'un autre LinearLayout avec wrap_content pour la largeur et la hauteur ainsi que pour l’orientation verticale.

172