2014-05-23 1 views
2

만있을 수 있습니다. 따라서 레이아웃에 scrollview가 있어야합니다. 나는 이런 짓을하고 a scroll view can only have one child을 가지고 :스크롤보기에는 하나의 하위 Android XML 파일

<?xml version="1.0" encoding="utf-8"?> 
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:orientation="vertical" > 

<LinearLayout 
    android:id="@+id/linearLayout1" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:orientation="horizontal" > 

    <TextView 
     android:id="@+id/TextView01" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="95dip" 
     android:layout_marginRight="5dip" 
     android:layout_marginTop="10dip" 
     android:text="Latitude: " 
     android:textSize="15dip" > 

    </TextView> 

    <TextView 
     android:id="@+id/TextView02" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="10dip" 
     android:text="unknown" 
     android:textSize="15dip" > 

    </TextView> 
</LinearLayout> 

<LinearLayout 
    android:id="@+id/linearLayout2" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" > 

    <TextView 
     android:id="@+id/TextView03" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="90dip" 
     android:layout_marginRight="5dip" 
     android:text="Longitute: " 
     android:textSize="15dip" > 
    </TextView> 

    <TextView 
     android:id="@+id/TextView04" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="unknown" 
     android:textSize="15dip" > 
    </TextView> 
</LinearLayout> 

<Button 
    android:id="@+id/button1" 
    android:layout_width="130dip" 
    android:layout_height="30dip" 
    android:layout_marginLeft="95dip" 
    android:layout_marginTop="10dip" 
    android:text="Find Coordinates" 
    android:textSize="10dip" /> 

<EditText 
    android:id="@+id/editTextName" 
    android:layout_width="264dp" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="25dip" 
    android:layout_marginTop="20dip" 
    android:ems="10" 
    android:hint="Enter Location Name" 
    android:textSize="10dip" > 

    <requestFocus /> 
</EditText> 

<EditText 
    android:id="@+id/editTextPhone" 
    android:layout_width="264dp" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="25dip" 
    android:layout_marginTop="0dip" 
    android:ems="10" 
    android:hint="Enter Phone Number" 
    android:textSize="10dip" /> 

<EditText 
    android:id="@+id/editTextEmail" 
    android:layout_width="264dp" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="25dip" 
    android:ems="10" 
    android:hint="Enter Email" 
    android:textSize="10dip" /> 

<EditText 
    android:id="@+id/editTextDesc" 
    android:layout_width="264dp" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="25dip" 
    android:ems="10" 
    android:hint="Enter Description" 
    android:textSize="10dip" /> 

<EditText 
    android:id="@+id/editTextFlowers" 
    android:layout_width="90dp" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="50dip" 
    android:hint="Flowers" 
    android:ems="10" 
    android:textSize="10dip" /> 

<EditText 
    android:id="@+id/editTextPlants" 
    android:layout_width="90dp" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="180dip" 
    android:layout_marginTop="-35dip" 
    android:hint="Plants" 
    android:ems="10" 
    android:textSize="10dip" /> 

<EditText 
    android:id="@+id/editTextFruit" 
    android:layout_width="90dp" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="50dip" 
    android:hint="Fruit" 
    android:ems="10" 
    android:textSize="10dip" /> 

<EditText 
    android:id="@+id/editTextVeggies" 
    android:layout_width="90dp" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="180dip" 
    android:layout_marginTop="-35dip" 
    android:hint="Veggies" 
    android:ems="10" 
    android:textSize="10dip" /> 

<EditText 
    android:id="@+id/editTextSun" 
    android:layout_width="90dp" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="115dip" 
    android:ems="10" 
    android:hint="Sunday" 
    android:textSize="10dip" /> 

<Button 
    android:id="@+id/saveLocation" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="90dip" 
    android:layout_marginTop="10dip" 
    android:text="Save Location" /> 

<Button 
    android:id="@+id/seeAll" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="120dip" 
    android:text="See all" /> 

</ScrollView> 

을 그리고, 내가 이런 짓을이 질문에

java.lang.IllegalStateException: ScrollView can host only one direct child

에 대한 답변을 다음

<?xml version="1.0" encoding="utf-8"?> 
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="wrap_content" 
android:orientation="vertical" > 

<LinearLayout 
    android:id="@+id/linearLayout1" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:orientation="vertical" > 

    <TextView 
     android:id="@+id/TextView01" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="95dip" 
     android:layout_marginRight="5dip" 
     android:layout_marginTop="10dip" 
     android:text="Latitude: " 
     android:textSize="15dip" > 

    </TextView> 

    <TextView 
     android:id="@+id/TextView02" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="10dip" 
     android:text="unknown" 
     android:textSize="15dip" > 

    </TextView> 
</LinearLayout> 

<LinearLayout 
    android:id="@+id/linearLayout2" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:orientation = "vertical" > 

    <TextView 
     android:id="@+id/TextView03" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="90dip" 
     android:layout_marginRight="5dip" 
     android:text="Longitute: " 
     android:textSize="15dip" > 
    </TextView> 

    <TextView 
     android:id="@+id/TextView04" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="unknown" 
     android:textSize="15dip" > 
    </TextView> 
</LinearLayout> 

<Button 
    android:id="@+id/button1" 
    android:layout_width="130dip" 
    android:layout_height="30dip" 
    android:layout_marginLeft="95dip" 
    android:layout_marginTop="10dip" 
    android:text="Find Coordinates" 
    android:textSize="10dip" /> 

<EditText 
    android:id="@+id/editTextName" 
    android:layout_width="264dp" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="25dip" 
    android:layout_marginTop="20dip" 
    android:ems="10" 
    android:hint="Enter Location Name" 
    android:textSize="10dip" > 

    <requestFocus /> 
</EditText> 

<EditText 
    android:id="@+id/editTextPhone" 
    android:layout_width="264dp" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="25dip" 
    android:layout_marginTop="0dip" 
    android:ems="10" 
    android:hint="Enter Phone Number" 
    android:textSize="10dip" /> 

<EditText 
    android:id="@+id/editTextEmail" 
    android:layout_width="264dp" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="25dip" 
    android:ems="10" 
    android:hint="Enter Email" 
    android:textSize="10dip" /> 

<EditText 
    android:id="@+id/editTextDesc" 
    android:layout_width="264dp" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="25dip" 
    android:ems="10" 
    android:hint="Enter Description" 
    android:textSize="10dip" /> 

<EditText 
    android:id="@+id/editTextFlowers" 
    android:layout_width="90dp" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="50dip" 
    android:hint="Flowers" 
    android:ems="10" 
    android:textSize="10dip" /> 

<EditText 
    android:id="@+id/editTextPlants" 
    android:layout_width="90dp" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="180dip" 
    android:layout_marginTop="-35dip" 
    android:hint="Plants" 
    android:ems="10" 
    android:textSize="10dip" /> 

<EditText 
    android:id="@+id/editTextFruit" 
    android:layout_width="90dp" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="50dip" 
    android:hint="Fruit" 
    android:ems="10" 
    android:textSize="10dip" /> 

<EditText 
    android:id="@+id/editTextVeggies" 
    android:layout_width="90dp" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="180dip" 
    android:layout_marginTop="-35dip" 
    android:hint="Veggies" 
    android:ems="10" 
    android:textSize="10dip" /> 

<EditText 
    android:id="@+id/editTextSun" 
    android:layout_width="90dp" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="115dip" 
    android:ems="10" 
    android:hint="Sunday" 
    android:textSize="10dip" /> 

<Button 
    android:id="@+id/saveLocation" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="90dip" 
    android:layout_marginTop="10dip" 
    android:text="Save Location" /> 

<Button 
    android:id="@+id/seeAll" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="120dip" 
    android:text="See all" /> 

</ScrollView> 

하지만 여전히 행운. 어떤 아이디어? 감사.

+1

ScrollView를 레이아웃으로 사용하려고합니까? 일반적으로 ScrollView는 사용자가 하나의 하위보기를 스크롤 할 수 있도록 허용하며 전체 Activity UI를 스크롤 할 수 없도록합니다. 실제로 거기에서 성취하려고하는 것이 무엇인지 명확히하십시오. – MarsAtomic

답변

11

의 핵심은 여기

있는 ScrollView는 하나의 직접 아이

"직접"키워드 인을 호스트 할 수 있습니다. 그래서 당신은 당신의 하나 직접 아이

<ScrollView 
    ...> 
    <LinearLayout> 
     .... 
     <!-- you can have as many Views in here as you want --> 
    </LinearLayout> 
</ScrollView> 
그래서

, 위의 예에서 LinearLayout 수 있습니다. 그 아이는 당신이 원하는만큼의 아이들을 가질 수 있습니다. 다시 말하면 다른 모든 것을 그 첫 번째 안에 넣을 수 있다는 뜻입니다. 그러나 같은 계층 구조에 둘 이상을 가질 수는 없습니다.

관련 문제