2013-06-22 4 views
0

TabHost가있는 XML 파일이 있지만 각 탭에 ScrollView를 넣는 데 문제가 있습니다. XML 파일은 다음과 같습니다.ScrollView를 탭에 넣는 방법

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" > 
    <TextView 
     android:id="@+id/textView1" 
     android:layout_width="wrap_content" android:layout_height="wrap_content" 
     android:text="Buscar eventos:" android:layout_marginBottom="10dp" 
     android:textAppearance="?android:attr/textAppearanceLarge" /> 
    <TabHost 
     android:id="@+id/thTabH" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_alignParentBottom="true" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentTop="true" > 
     <LinearLayout 
      android:layout_width="317dp" 
      android:layout_height="match_parent" 
      android:orientation="vertical" > 
      <TabWidget 
       android:id="@android:id/tabs" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" > 
      </TabWidget> 
      <FrameLayout 
       android:id="@android:id/tabcontent" 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" > 
        <LinearLayout 
         android:id="@+id/tab1" 
         android:layout_width="match_parent" 
         android:layout_height="match_parent" 
         android:orientation="vertical" >      
         <TextView android:id="@+id/TextView01" android:text="Nombre:" 
           android:layout_marginTop="18dp"        android:layout_width="220px" android:layout_height="wrap_content" 
           android:layout_gravity="center_vertical|center_horizontal|center"/> 
         <EditText 
           android:id="@+id/EditText01" 
           android:layout_width="220px" android:layout_height="wrap_content" 
           android:layout_gravity="center_vertical|center_horizontal|center"/>  

         <TextView android:id="@+id/TextView02" android:text="Provincia:" 
           android:layout_width="220px" android:layout_height="wrap_content" 
           android:layout_gravity="center_vertical|center_horizontal|center"/> 
         <EditText android:id="@+id/EditText02" 
           android:layout_width="220px" android:layout_height="wrap_content" 
           android:layout_gravity="center_vertical|center_horizontal|center"/> 
         <TextView android:id="@+id/TextView02" android:text="Localidad:" 
           android:layout_width="220px" android:layout_height="wrap_content" 
           android:layout_gravity="center_vertical|center_horizontal|center"/> 
         <EditText android:id="@+id/EditText02" 
           android:layout_width="220px" android:layout_height="wrap_content" 
           android:layout_gravity="center_vertical|center_horizontal|center"/> 
         <TextView android:id="@+id/TextView02" android:text="Fecha:" 
           android:layout_width="220px" android:layout_height="wrap_content" 
           android:layout_gravity="center_vertical|center_horizontal|center"/> 
         <Button android:id="@+id/selecionarFecha" android:text="Seleccionar" 
           android:layout_width="220px" android:layout_height="wrap_content" 
           android:layout_gravity="center_vertical|center_horizontal|center"/> 
         <Button android:id="@+id/realizarBusqueda" android:text="Buscar eventos" 
           android:layout_width="220px" android:layout_height="wrap_content" 
           android:layout_gravity="center_vertical|center_horizontal|center" />  

        </LinearLayout> 


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

         <TextView android:id="@+id/TextView02" android:text="Distancia desde aquí (km):" 
          android:layout_width="220px" android:layout_height="wrap_content" android:layout_marginTop="18dp" 
          android:layout_gravity="center_vertical|center_horizontal|center"/> 
         <Spinner 
          android:id="@+id/spOpcion1" 
          android:layout_width="220px" android:layout_height="50dp" 
          android:layout_gravity="center_vertical|center_horizontal|center"/> 
         <TextView android:id="@+id/TextView02" android:text="Fecha:" 
           android:layout_width="220px" android:layout_height="wrap_content" 
           android:layout_gravity="center_vertical|center_horizontal|center"/> 
         <Button android:id="@+id/selecionarFecha" android:text="Seleccionar" 
           android:layout_width="220px" android:layout_height="wrap_content" 
           android:layout_gravity="center_vertical|center_horizontal|center"/>        
         <TextView android:text="" android:layout_width="220px" android:layout_height="wrap_content" 
           android:layout_gravity="center_vertical|center_horizontal|center"/> 
         <Button android:id="@+id/realizarBusqueda" android:text="Buscar eventos" 
          android:layout_width="220px" android:layout_height="wrap_content" 
          android:layout_gravity="center_vertical|center_horizontal|center" />  

        </LinearLayout> 
      </FrameLayout> 
     </LinearLayout> 
    </TabHost> 
</LinearLayout> 

각 탭 (내부)에 ScrollView가 있어야합니다. 어떤 생각?

답변

1

두 개의 LinearLayout 탭을 각각 ScrollView으로 감싸고 LinearLayouts의 높이를 wrap_content으로 변경하십시오.

+0

나는 그것을 시도했다. '렌더링 도중 예외 발생 : ID가 -1 인 뷰를 찾을 수 없으므로 탭 컨텐트를 만들 수 없습니다. 예외 세부 정보가 Window> Show View> Error Log'에 기록됩니다 :' ' – vicenrele

+1

또한 ID를 업데이트해야합니다. 'LinearLayout'에서'@ + id/tab1'을 제거하고'ScrollView'에 사용하십시오. 두 번째 탭에도 똑같은 작업을하십시오. – Plato

0

TabHost에 레이아웃을 생성하고 있습니다.

그냥 실행시에 당신은 당신의 TabActivity가 개최 탭의 수를 설정할 수 있습니다,

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

    <LinearLayout 
     android:id="@+id/tabhost_linearlayout" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:orientation="vertical" > 

     <TabWidget 
      android:id="@android:id/tabs" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:tabStripEnabled="false" /> 

     <FrameLayout 
      android:id="@android:id/tabcontent" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" /> 
    </LinearLayout> 

</TabHost> 

을이 같은 TabHost 레이아웃을 작성하고. 각 탭에 다른 레이아웃 추가하기. 그리하여 각 레이아웃에 대해 스크롤 뷰를 설정할 수 있습니다.

+0

하지만 TabHost 전에 정적 TexView가 있어야합니다. 이를 위해 LinearLayout도 추가했습니다. – vicenrele

관련 문제