文档介绍:Android TableLayout 的使用说明 1) TableLayout 和我们平时在网页上见到的 Table 有所不同, TableLayout 没有边框的 2 )它是由多个 TableRow 对象组成,每个 TableRow 可以有 0 个或多个单元格,每个单元格就是一个 View 。这些 TableRow , 单元格不能设置 layout_width, 宽度默认是 fill_paren t 的,只有高度 layout_height 可以自定义,默认是 wrap_content 。 3 )单元格可以为 empty ,并且通过 android:layout_column 可以设置 index 值实现跳开某些单元格。在 TableRow 之间 4 )添加 View, 设置 layout_height 以及背景色,就可以实现一条间隔线。 android:layout_span 可以设置合并几个单元格: Java 代码?<?xml version="" encoding="utf-8"?> ??<TableLayout xmlns:android="http://schemas./apk/res/android" ?? android:layout_width="fill_parent" ?? android:layout_height="fill_parent"> ??<TableRow> ????<TextView ???? android:text="column1" ???? android:padding="3dip" /> ????<TextView ???? android:text="column2" ???? android:padding="3dip" /> ????<TextView ???? android:text="column3" ???? android:padding="3dip" /> ????</TableRow> ????<TableRow> ????<TextView ???? android:text="column11" ???? android:visibility="invisible"/> //cell 不见了????<TextView ???? android:text=" 左边的 invisible" ???? android:gravity="right" ???? android:padding="3dip" /> ????<Button ???? android:id="@+id/go" ???? android:text="go" ???? android:padding="3dip" /> ????<Button ???? android:text="cancel" ???? android:padding="3dip" /> ????</TableRow> ????<View // 间隔线???? android:layout_height="2dip" ???? android:background="#F00" /> ????<TableRow> ????<TextView ???? android:text=" 右边的 cell empty" /> ????<TextView ???? android:layout_column="2" ???? android:text=" 跳开 empty cell" ???? android:padding="3dip" /> ????</TableRow> ????<TableRow> ????<TextView ???? android:text=" 合并 3 个单元格" ???? android:layout_span="3" ???? android:gravity="center_horizontal" ???? android:background="#FFC0C0C0" ???? android:textColor="#f00" ???? android:padding="3dip" /> ??????</TableRow> ??????</TableLayout> 没有设置收缩/ 伸展效果注意,原来没有添加 android:padding="3dip" 的,发现那些 column 会凑在一起的,没有空白间隔!明显看到,那个 cancel 按钮被挤到几乎看不见了!这时候需要使用 1 ) android:shrinkColumns=" 可收缩的 column" , 2 ) android:stretchColumns=" 可伸展的 column" 。 android:shrinkColumns