44

Mam wiele różnych LinearLayout s z połączoną wysokością, która z łatwością przekracza wysokość ekranu urządzenia. Tak, aby uczynić mój układ przewijania, próbowałem dodając w ScrollView, ale niestety pojawia się następujący błąd:Scrollview może obsługiwać tylko jedno bezpośrednie dziecko

Scrollview can host only one direct child

Zrobiłem rozeznanie, ale naprawdę nie mogłem zrozumieć, jak go rozwiązać, nawet po przeczytaniu kilku rozwiązań. Próbowałem kilku zmian, ale jak dotąd nic nie działało dla mnie. Jakaś pomoc?

<?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> 

Odpowiedz

137

Wrap wszystkie dzieci wewnątrz innego LinearLayout z wrap_content zarówno szerokości i wysokości, a także orientacji pionowej.

+0

To jest właściwy sposób. –

+0

Dziękuję bardzo! Czy mógłbyś rzucić okiem na inne moje pytanie? [link] (http://stackoverflow.com/questions/16679518/cant-save-audio-to-phone-using-media-player-in-eclipse) – user2407147

+3

Odpowiedziałem na twoje drugie pytanie, nie zapomnij przyjąć odpowiedzi z dużym czekiem, więc wiemy, że odpowiedzieliśmy na twoje pytanie. –

Powiązane problemy