Android TableLayout没有显示所有11个TableRows

时间:2014-09-25 04:20:39

标签: android xml tablelayout tablerow

我正在尝试为MasterMind游戏的简单版本创建布局。我已经设置了一个带有10个TableRows的TableLayout,它们具有相同的垂直权重来表示挂钩,最后一个较大的行位于底部。每个主要的10行由4个按钮元素(相同的重量)和两侧的两个视图组成,以便按钮保持居中。我已经有了一个我觉得应该工作的布局,但是目前只会显示9个行(其他行存在,就在屏幕外)。

有人可以帮我弄清楚为什么不显示所有元素?我会做一系列的LinearLayouts,但我听说这不是很有效,虽然我不确定我现在的方法是不是。

我希望能得到以下内容: 11 rows

但是我得到了这个: Actual layout result

这是布局(抱歉它很长/重复):

<?xml version="1.0" encoding="utf-8"?>

<TableLayout
    android:id="@+id/game_layout"
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:background="#b3b3b3"
    android:orientation="vertical">

    <TableRow
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:orientation="horizontal">

        <View
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="2"/>

        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>

        <View
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="2"/>

    </TableRow>

    <TableRow
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:orientation="horizontal">

        <View
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="2"/>

        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>

        <View
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="2"/>

    </TableRow>

    <TableRow
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:orientation="horizontal">

        <View
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="2"/>

        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>

        <View
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="2"/>

    </TableRow>

    <TableRow
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:orientation="horizontal">

        <View
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="2"/>

        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>

        <View
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="2"/>

    </TableRow>

    <TableRow
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:orientation="horizontal">

        <View
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="2"/>

        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>

        <View
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="2"/>

    </TableRow>

    <TableRow
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:orientation="horizontal">

        <View
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="2"/>

        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>

        <View
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="2"/>

    </TableRow>

    <TableRow
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:orientation="horizontal">

        <View
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="2"/>

        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>

        <View
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="2"/>

    </TableRow>

    <TableRow
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:orientation="horizontal">

        <View
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="2"/>

        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>

        <View
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="2"/>

    </TableRow>

    <TableRow
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:orientation="horizontal">

        <View
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="2"/>

        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>

        <View
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="2"/>

    </TableRow>

    <TableRow
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:orientation="horizontal">

        <View
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="2"/>

        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>
        <Button
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="1"/>

        <View
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="2"/>

    </TableRow>

    <TableRow
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="2"
        android:orientation="horizontal">

        <View
            android:layout_height="fill_parent"
            android:layout_width="0dp"
            android:layout_weight="2"/>

    </TableRow>

</TableLayout>

1 个答案:

答案 0 :(得分:2)

将整个事情包括在内:

<ScrollView
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:scrollbars="none"
    android:layout_weight="1">
   <TableLayout
    android:id="@+id/game_layout"
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:background="#b3b3b3"
    android:orientation="vertical">
    ...

</ScrollView>