有人能弄清楚这个TableLayout有什么问题吗?

时间:2011-12-03 01:34:25

标签: java android row android-tablelayout

我有这张表,它显示了一些名称以及一些重量,成本和数量的数字。当我试图在另一个标题下创建另一行(“ID号”)时,这些行完全没有了。如果我wrap_content它似乎修复它,但然后还有另一个问题,这就是为什么我在这里。具有wrap_content的单元格中的ID号将不会填充单元格的其余部分。如果有人能解释这个细胞出了什么问题,请告诉我!

table.xml:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
<ScrollView 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >
<TableLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#222222"
    android:shrinkColumns="*">
<TableRow android:layout_margin="1dp" android:background="#8b4513" android:gravity="center">
<TextView
android:padding="3dip"
android:text="Basic Info"
android:textColor="#000000"
android:textSize="22dp"
android:gravity="center" />

</TableRow>
<TableRow android:layout_margin="1dp" android:background="#f0e68c" android:gravity="left">
<TextView
android:gravity="left"
android:padding="3dip"
android:text="Name"
android:textColor="#000000"
android:textSize="22dp" />
<TextView
android:gravity="left"
android:padding="3dip"
android:text="Weight"
android:textColor="#000000"
android:textSize="22dp" />

<TextView
android:gravity="right"
android:padding="3dip"
android:text="Cost"
android:textColor="#000000"
android:textSize="22dp" />

<TextView
android:gravity="left"
android:padding="3dip"
android:text="Qty"
android:textColor="#000000"
android:textSize="22dp" />
</TableRow>
<TableRow android:layout_margin="1dp" android:background="#708090">
<TextView
android:gravity="left"
android:padding="3dip"
android:text="Shovel"
android:textColor="#000000"
android:textSize="22dp"
android:background="#aaaaaa" />
<TextView
android:gravity="center"
android:padding="3dip"
android:text="6"
android:textColor="#000000"
android:textSize="22dp" />
<TextView
android:gravity="right"
android:padding="3dip"
android:text="50"
android:textColor="#000000"
android:textSize="22dp"
android:background="#aaaaaa" />
<TextView
android:gravity="right"
android:padding="3dip"
android:text="23"
android:textColor="#000000"
android:textSize="22dp" />
</TableRow>
<TableRow android:layout_margin="1dp" android:background="#708090">
<TextView
android:gravity="left"
android:padding="3dip"
android:text="Shoes"
android:textColor="#000000"
android:textSize="22dp"
android:background="#aaaaaa" />
<TextView
android:gravity="center"
android:padding="3dip"
android:text="2"
android:textColor="#000000"
android:textSize="22dp" />
<TextView
android:gravity="right"
android:padding="3dip"
android:text="4"
android:textColor="#000000"
android:textSize="22dp"
android:background="#aaaaaa" />
<TextView
android:gravity="right"
android:padding="3dip"
android:text="6"
android:textColor="#000000"
android:textSize="22dp" />
</TableRow>
<TableRow android:layout_margin="1dp" android:background="#708090">
<TextView
android:gravity="left"
android:padding="3dip"
android:text="Boots"
android:textColor="#000000"
android:textSize="22dp"
android:background="#aaaaaa" />
<TextView
android:gravity="center"
android:padding="3dip"
android:text="2"
android:textColor="#000000"
android:textSize="22dp" />
<TextView
android:gravity="right"
android:padding="3dip"
android:text="5"
android:textColor="#000000"
android:textSize="22dp"
android:background="#aaaaaa" />
<TextView
android:gravity="right"
android:padding="3dip"
android:text="5"
android:textColor="#000000"
android:textSize="22dp" />
</TableRow>
<TableRow android:layout_margin="1dp" android:background="#708090">
<TextView
android:gravity="left"
android:padding="3dip"
android:text="Gloves"
android:textColor="#000000"
android:textSize="22dp"
android:background="#aaaaaa" />
<TextView
android:gravity="center"
android:padding="3dip"
android:text="1"
android:textColor="#000000"
android:textSize="22dp" />
<TextView
android:gravity="right"
android:padding="3dip"
android:text="10"
android:textColor="#000000"
android:textSize="22dp"
android:background="#aaaaaa" />
<TextView
android:gravity="right"
android:padding="3dip"
android:text="6"
android:textColor="#000000"
android:textSize="22dp" />
</TableRow>
<TableRow android:layout_margin="1dp" android:background="#708090">
<TextView
android:gravity="left"
android:padding="3dip"
android:text="Better gloves"
android:textColor="#000000"
android:textSize="22dp"
android:background="#aaaaaa" />
<TextView
android:gravity="center"
android:padding="3dip"
android:text="2"
android:textColor="#000000"
android:textSize="22dp" />
<TextView
android:gravity="right"
android:padding="3dip"
android:text="5"
android:textColor="#000000"
android:textSize="22dp"
android:background="#aaaaaa" />
<TextView
android:gravity="right"
android:padding="3dip"
android:text="5"
android:textColor="#000000"
android:textSize="22dp" />
</TableRow>
<TableRow android:layout_margin="1dp" android:background="#708090">
<TextView
android:gravity="left"
android:padding="3dip"
android:text="Hat"
android:textColor="#000000"
android:textSize="22dp"
android:background="#aaaaaa" />
<TextView
android:gravity="center"
android:padding="3dip"
android:text="1"
android:textColor="#000000"
android:textSize="22dp" />
<TextView
android:gravity="right"
android:padding="3dip"
android:text="23"
android:textColor="#000000"
android:textSize="22dp"
android:background="#aaaaaa" />
<TextView
android:gravity="right"
android:padding="3dip"
android:text="11"
android:textColor="#000000"
android:textSize="22dp" />
</TableRow>
<TableRow android:layout_margin="1dp" android:background="#8b4513"        android:gravity="center">
<TextView
android:padding="3dip"
android:text="ID Numbers"
android:textColor="#000000"
android:textSize="22dp"
android:gravity="center" />

这是代码的其余部分。身份证号码不会填满整个单元格:

</TableRow>
<TableRow android:layout_margin="1dp" android:background="#708090">
<TextView
android:gravity="left"
android:padding="3dip"
android:text="Shovel ID"
android:textColor="#000000"
android:textSize="22dp"
android:background="#aaaaaa" />
<TextView
android:gravity="left"
android:padding="3dip"
android:text="12736152889977"
android:width="wrap_content"
android:textColor="#000000"
android:textSize="22dp"
android:background="#aaaaaa" />
</TableRow>
</TableRow>
</TableLayout>
</ScrollView>
</LinearLayout>

1 个答案:

答案 0 :(得分:0)

试试这种方式

错误显示是因为在ScrollView中你只能有一个Child(或View),但是一个孩子可以包含很多其他的,就像这样。

在ScrollView和LinearLayout中选择一个LinearLayout创建两个TableLayout。 这里LinearLayout只是ScrollView的一个子节点,但LinearLayout将有两个子节点(两个TableLayouts)。

<ScrollView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

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

        <TableLayout
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:background="#222222"
            android:shrinkColumns="1" >

            <TableRow
                android:layout_margin="1dp"
                android:background="#8b4513"
                android:gravity="center" >

                <TextView
                    android:gravity="center"
                    android:padding="3dip"
                    android:text="Basic Info"
                    android:textColor="#000000"
                    android:textSize="22dp" />
            </TableRow>

            <TableRow
                android:layout_margin="1dp"
                android:background="#f0e68c"
                android:gravity="left" >

                <TextView
                    android:gravity="left"
                    android:padding="3dip"
                    android:text="Name"
                    android:textColor="#000000"
                    android:textSize="22dp" />

                <TextView
                    android:gravity="left"
                    android:padding="3dip"
                    android:text="Weight"
                    android:textColor="#000000"
                    android:textSize="22dp" />

                <TextView
                    android:gravity="right"
                    android:padding="3dip"
                    android:text="Cost"
                    android:textColor="#000000"
                    android:textSize="22dp" />

                <TextView
                    android:gravity="left"
                    android:padding="3dip"
                    android:text="Qty"
                    android:textColor="#000000"
                    android:textSize="22dp" />
            </TableRow>

            <TableRow
                android:layout_margin="1dp"
                android:background="#708090" >

                <TextView
                    android:background="#aaaaaa"
                    android:gravity="left"
                    android:padding="3dip"
                    android:text="Shovel"
                    android:textColor="#000000"
                    android:textSize="22dp" />

                <TextView
                    android:gravity="center"
                    android:padding="3dip"
                    android:text="6"
                    android:textColor="#000000"
                    android:textSize="22dp" />

                <TextView
                    android:background="#aaaaaa"
                    android:gravity="right"
                    android:padding="3dip"
                    android:text="50"
                    android:textColor="#000000"
                    android:textSize="22dp" />

                <TextView
                    android:gravity="right"
                    android:padding="3dip"
                    android:text="23"
                    android:textColor="#000000"
                    android:textSize="22dp" />
            </TableRow>

            <TableRow
                android:layout_margin="1dp"
                android:background="#708090" >

                <TextView
                    android:background="#aaaaaa"
                    android:gravity="left"
                    android:padding="3dip"
                    android:text="Shoes"
                    android:textColor="#000000"
                    android:textSize="22dp" />

                <TextView
                    android:gravity="center"
                    android:padding="3dip"
                    android:text="2"
                    android:textColor="#000000"
                    android:textSize="22dp" />

                <TextView
                    android:background="#aaaaaa"
                    android:gravity="right"
                    android:padding="3dip"
                    android:text="4"
                    android:textColor="#000000"
                    android:textSize="22dp" />

                <TextView
                    android:gravity="right"
                    android:padding="3dip"
                    android:text="6"
                    android:textColor="#000000"
                    android:textSize="22dp" />
            </TableRow>

            <TableRow
                android:layout_margin="1dp"
                android:background="#708090" >

                <TextView
                    android:background="#aaaaaa"
                    android:gravity="left"
                    android:padding="3dip"
                    android:text="Boots"
                    android:textColor="#000000"
                    android:textSize="22dp" />

                <TextView
                    android:gravity="center"
                    android:padding="3dip"
                    android:text="2"
                    android:textColor="#000000"
                    android:textSize="22dp" />

                <TextView
                    android:background="#aaaaaa"
                    android:gravity="right"
                    android:padding="3dip"
                    android:text="5"
                    android:textColor="#000000"
                    android:textSize="22dp" />

                <TextView
                    android:gravity="right"
                    android:padding="3dip"
                    android:text="5"
                    android:textColor="#000000"
                    android:textSize="22dp" />
            </TableRow>

            <TableRow
                android:layout_margin="1dp"
                android:background="#708090" >

                <TextView
                    android:background="#aaaaaa"
                    android:gravity="left"
                    android:padding="3dip"
                    android:text="Gloves"
                    android:textColor="#000000"
                    android:textSize="22dp" />

                <TextView
                    android:gravity="center"
                    android:padding="3dip"
                    android:text="1"
                    android:textColor="#000000"
                    android:textSize="22dp" />

                <TextView
                    android:background="#aaaaaa"
                    android:gravity="right"
                    android:padding="3dip"
                    android:text="10"
                    android:textColor="#000000"
                    android:textSize="22dp" />

                <TextView
                    android:gravity="right"
                    android:padding="3dip"
                    android:text="6"
                    android:textColor="#000000"
                    android:textSize="22dp" />
            </TableRow>

            <TableRow
                android:layout_margin="1dp"
                android:background="#708090" >

                <TextView
                    android:background="#aaaaaa"
                    android:gravity="left"
                    android:padding="3dip"
                    android:text="Better gloves"
                    android:textColor="#000000"
                    android:textSize="22dp" />

                <TextView
                    android:gravity="center"
                    android:padding="3dip"
                    android:text="2"
                    android:textColor="#000000"
                    android:textSize="22dp" />

                <TextView
                    android:background="#aaaaaa"
                    android:gravity="right"
                    android:padding="3dip"
                    android:text="5"
                    android:textColor="#000000"
                    android:textSize="22dp" />

                <TextView
                    android:gravity="right"
                    android:padding="3dip"
                    android:text="5"
                    android:textColor="#000000"
                    android:textSize="22dp" />
            </TableRow>

            <TableRow
                android:layout_margin="1dp"
                android:background="#708090" >

                <TextView
                    android:background="#aaaaaa"
                    android:gravity="left"
                    android:padding="3dip"
                    android:text="Hat"
                    android:textColor="#000000"
                    android:textSize="22dp" />

                <TextView
                    android:gravity="center"
                    android:padding="3dip"
                    android:text="1"
                    android:textColor="#000000"
                    android:textSize="22dp" />

                <TextView
                    android:background="#aaaaaa"
                    android:gravity="right"
                    android:padding="3dip"
                    android:text="23"
                    android:textColor="#000000"
                    android:textSize="22dp" />

                <TextView
                    android:gravity="right"
                    android:padding="3dip"
                    android:text="11"
                    android:textColor="#000000"
                    android:textSize="22dp" />
            </TableRow>
        </TableLayout>

        <TableLayout
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:background="#222222"
            android:shrinkColumns="1" >

            <TableRow
                android:layout_margin="1dp"
                android:background="#8b4513"
                android:gravity="center" >

                <TextView
                    android:gravity="center"
                    android:padding="3dip"
                    android:text="ID Numbers"
                    android:textColor="#000000"
                    android:textSize="22dp" />
            </TableRow>

            <TableRow
                android:layout_margin="1dp"
                android:background="#708090" >

                <TextView
                    android:background="#aaaaaa"
                    android:gravity="left"
                    android:padding="3dip"
                    android:text="Shovel ID"
                    android:textColor="#000000"
                    android:textSize="22dp" />

                <TextView
                    android:background="#aaaaaa"
                    android:gravity="left"
                    android:padding="3dip"
                    android:text="12736152889977"
                    android:textColor="#000000"
                    android:textSize="22dp" />
            </TableRow>
        </TableLayout>
    </LinearLayout>
</ScrollView>