TableLayout是一个以行、列显示视图View的视图组
1、开始一个新的工程,名字叫做HelloTableLayout
2、打开res/layout/main.xml文件并且插入如下内容
1 <?xml version="1.0" encoding="utf-8"?> 2 <TableLayout 3 xmlns:android="http://schemas.android.com/apk/res/android" 4 android:layout_width="fill_parent" 5 android:layout_height="fill_parent" 6 android:stretchColumns="1"> 7 <TableRow> 8 <TextView 9 android:layout_column="1" 10 android:text="Open..." 11 android:padding="3dip" 12 /> 13 <TextView 14 android:text="Ctrl-O" 15 android:gravity="right" 16 android:padding="3dip" 17 /> 18 </TableRow> 19 <TableRow> 20 <TextView 21 android:layout_column="1" 22 android:text="Save..." 23 android:padding="3dip" 24 /> 25 <TextView 26 android:text="Ctrl-S" 27 android:gravity="right" 28 android:padding="3dip" 29 /> 30 </TableRow> 31 <TableRow> 32 <TextView 33 android:layout_column="1" 34 android:text="Save as..." 35 android:padding="3dip" 36 /> 37 <TextView 38 android:text="Ctrl-Shift-S" 39 android:gravity="right" 40 android:padding="3dip" 41 /> 42 </TableRow> 43 <View 44 android:layout_height="2dip" 45 android:background="#FF909090" 46 /> 47 <TableRow> 48 <TextView 49 android:text="X" 50 android:padding="3dip" 51 /> 52 <TextView 53 android:text="Import..." 54 android:padding="3dip" 55 /> 56 </TableRow> 57 <TableRow> 58 <TextView 59 android:text="X" 60 android:padding="3dip" 61 /> 62 <TextView 63 android:text="Export..." 64 android:padding="3dip" 65 /> 66 <TextView 67 android:text="Ctrl-E" 68 android:gravity="right" 69 android:padding="3dip" 70 /> 71 </TableRow> 72 <View 73 android:layout_height="2dip" 74 android:background="#FF909090" 75 /> 76 <TableRow> 77 <TextView 78 android:layout_column="1" 79 android:text="Quit" 80 android:padding="3dip" 81 /> 82 </TableRow> 83 </TableLayout>
注意到这个文件类似于HTML的table的结构,TableLayout元素就像是HTML中的<table>元素;TableRow就像是一一个<tr>元素;但是对于每一个单元格,你可以用各种视图元素,在这里例子里,每个单元格用TextView,在这些行之间,还有一个基本View,用来画水平线
TextView中的一些属性
android:layout_column="1":表示控件放在标号为1的列上,标号是从0开始的
android:gravity="right":定义字体在父控件中显示在右边
android:stretchColumns="1":设置自动拉伸哪些列,列ID从0开始,多个列的话用","分隔。这里的作用是让第2列可以扩展到所有可用空间
android:shrinkColumns:设置自动收缩哪些列,列ID从0开始,多个列的话用","分隔
android:collapseColumns:设置自动隐藏哪些列,列ID从0开始,多个列的话用","分隔
顺便:android:layout_span表示一个控件占几列空间
下面的是基本的View,是在屏幕上画一条2dip高的一条横线
1 <View 2 android:layout_height="2dip" 3 android:background="#FF909090" 4 />
运行结果如下: