使用TabHost包括其他布局



我有一个TabHost布局(下面的代码)

<TabHost
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/myTabHost"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >
    <TabWidget
        android:id="@android:id/tabs"
        android:layout_width="fill_parent"
        android:layout_height="65dp" >
    </TabWidget>
    <FrameLayout
        android:id="@android:id/tabcontent"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:paddingTop="65dp" >
        <LinearLayout
            android:id="@+id/content"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:orientation="vertical" >
        </LinearLayout>
    </FrameLayout>
</TabHost>

我正在TabHost中加载一些活动,关于活动的一切都是OK的。但我的问题是关于加载另一个布局在TabHost的顶部通过包括标签,在其他布局中,比如LinearLayout,我在里面放了一个include标签,这是可以的,但在TabHost中,我不能这样做,因为添加include后TabHost UI会损坏
.请告诉我如何解决这个问题

用另一个LinearLayout标签像这样包装你的TabHost标签:

<LinearLayout
            xmlns:android="http://schemas.android.com/apk/res/android"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:orientation="vertical" >
            <!-- inclde goes here -->
            <TabHost
                android:id="@+id/myTabHost"
                android:layout_width="match_parent"
                android:layout_height="match_parent" >
                        <!-- Other tags as you have already. -->
            </TabHost>
</LinearLayout>

然后将LinearLayout作为TabHost的父级,并在其他layouts中使用include标记包括LinearLayout,如下所示:

   <LinearLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
         android:id="@+id/myLinearLayout"
         android:layout_width="match_parent"
         android:layout_height="match_parent" >
    <TabHost
        android:id="@+id/myTabHost"
        android:layout_width="match_parent"
        android:layout_height="match_parent" >
    <TabWidget
        android:id="@android:id/tabs"
        android:layout_width="fill_parent"
        android:layout_height="65dp" >
    </TabWidget>
    <FrameLayout
        android:id="@android:id/tabcontent"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:paddingTop="65dp" >
    <LinearLayout
        android:id="@+id/content"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical" >
    </LinearLayout>
    </FrameLayout>
    </TabHost>
 </LinearLayout>

相关内容

  • 没有找到相关文章

最新更新