Android系统。 TabWidget现在总是排在首位?

时间:2013-01-02 20:38:41

标签: android tabs fragment tabwidget android-fragmentactivity

我正在研究使用片段制作标签。而且我想知道如何将TabWidget放在页面底部。

我正在研究FragmentTab.java示例(支持库v4)。

有一个XML布局:

<android.support.v4.app.FragmentTabHost
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/tabhost"
android:layout_width="match_parent"
android:layout_height="match_parent">

<LinearLayout
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <TabWidget
        android:id="@android:id/tabs"
        android:orientation="horizontal"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_weight="0"/>

    <FrameLayout
        android:id="@android:id/tabcontent"
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:layout_weight="0"/>

    <FrameLayout
        android:id="@+id/realtabcontent"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"/>

</LinearLayout>

无论我做什么,TabWidget仍然排在最前面。实际上我可以删除TabWidget标签,但项目仍然会成功启动,TabWidget会再次出现。

现在使用FragmentActivity和FragmentTabHost是否意味着我只能将我的TabWidget放在首位?

谢谢。

1 个答案:

答案 0 :(得分:0)

你快到了!我认为这里缺少的是你在<{strong> TabWidget之前放置FrameLayout 。此外,我认为您不能将0dp宽度和高度设置为@android:id/tabcontent,它是需要显示的layout_weight="1"。试试这个(编辑过):

<android.support.v4.app.FragmentTabHost
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@android:id/tabhost"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <LinearLayout
        android:orientation="vertical"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <FrameLayout
            android:id="@android:id/tabcontent"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1"/>
       <!--
        <FrameLayout
            android:id="@+id/realtabcontent"
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1"/>
       -->
        <TabWidget
            android:id="@android:id/tabs"
            android:orientation="horizontal"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0" />

    </LinearLayout>
</android.support.v4.app.FragmentTabHost>