显示两种布局



我正在尝试构建一个程序,其中用户数据显示在表视图中,而Home、About和Settings将显示在表布局下方的TabLayout中,但程序运行时TabLayout不会显示在屏幕上。这里我有两个类文件,一个用于显示表格布局,另一个则用于显示TabLayout。下面是我的main.xml文件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/tabhost"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TableLayout
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="7dp">
<TextView  
android:id="@+id/item_title"
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
android:textAppearance="?android:attr/textAppearanceMedium"
android:padding="2dp"
android:textSize="10dp" />
<TableRow 
    android:id="@+id/tableRow1"
           android:layout_width="fill_parent"
           android:layout_height="wrap_content" >
            <TextView android:text="" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1" android:minWidth="40dp" android:background="@drawable/top_left" android:textColor="#ffffffff"/>
           <TextView android:text="Civil Bank " android:paddingLeft="5dp" android:textStyle="bold" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1"   android:minWidth="40dp" android:background="@drawable/top_middle" android:textColor="#ffffffff"/>
           <TextView android:text="Sunrise Bank" android:paddingLeft="5dp" android:textStyle="bold" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1" android:minWidth="40dp" android:background="@drawable/top_right"  android:textColor="#ffffffff"/>
</TableRow>
<TableRow
           android:id="@+id/tableRow2"
           android:layout_width="fill_parent"
           android:layout_height="wrap_content" >
           <TextView android:text="Web user" android:paddingLeft="5dp" android:layout_width="fill_parent" android:layout_weight="1"  android:layout_height="wrap_content" android:background="@drawable/bottom_middle"  android:textColor="#ffffffff"/>
           <TextView android:text="0.00" android:paddingLeft="5dp" android:id="@+id/webuserTxtView" android:layout_width="fill_parent" android:layout_weight="1"  android:layout_height="wrap_content" android:background="@drawable/bottom_middle" android:textColor="#ffffffff"/> 
           <TextView  android:text="0.00" android:paddingLeft="5dp" android:id="@+id/S_webuserTxtView" android:layout_width="fill_parent" android:layout_weight="1"  android:layout_height="wrap_content" android:background="@drawable/bottom_middle" android:textColor="#ffffffff" />
       </TableRow>
       <TableRow
           android:id="@+id/tableRow3"
           android:layout_width="fill_parent"
           android:layout_height="wrap_content" >
           <TextView android:text="Transfer" android:paddingLeft="5dp" android:layout_width="fill_parent" android:layout_weight="1"  android:layout_height="wrap_content" android:background="@drawable/bottom_middle" android:textColor="#ffffffff"/>
           <TextView android:text="0.00" android:paddingLeft="5dp" android:id="@+id/transferTxtView" android:layout_width="fill_parent" android:layout_weight="1"  android:layout_height="wrap_content" android:background="@drawable/bottom_middle" android:textColor="#ffffffff"/>
           <TextView android:text="0.00" android:paddingLeft="5dp" android:id="@+id/S_transferTxtView"  android:layout_width="fill_parent" android:layout_weight="1"  android:layout_height="wrap_content" android:background="@drawable/bottom_middle" android:textColor="#ffffffff"/>
       </TableRow>
       <TableRow
           android:id="@+id/tableRow4"
           android:layout_width="fill_parent"
           android:layout_height="wrap_content" >
           <TextView android:text="Cash" android:paddingLeft="5dp" android:layout_width="fill_parent" android:layout_weight="1"  android:layout_height="wrap_content" android:background="@drawable/bottom_right" android:textColor="#ffffffff"/>
           <TextView android:text="0.00" android:paddingLeft="5dp" android:id="@+id/cashTxtView" android:layout_width="fill_parent" android:layout_weight="1"  android:layout_height="wrap_content" android:background="@drawable/bottom_middle" android:textColor="#ffffffff"/>
           <TextView android:text="0.00" android:paddingLeft="5dp" android:id="@+id/S_cashTxtView" android:layout_width="fill_parent" android:layout_weight="1"  android:layout_height="wrap_content" android:background="@drawable/bottom_left" android:textColor="#ffffffff"/>
       </TableRow>

<TabHost
android:id="@android:id/tabhost"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <TabWidget
        android:id="@android:id/tabs"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" />
    <FrameLayout
        android:id="@android:id/tabcontent"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"/>
</LinearLayout>
</TabHost>
</TableLayout>
 </LinearLayout>

您已经将tablelayout的宽度和高度指定为fill-parent。所以它可能会占据linearlayout的整个空间。您必须使用wrap-content而不是fill-parent。在tabhost中,使用属性android:layout_below="@+id/yourTableLayout"