7.5 TableLayout布局详解
来源:互联网 发布:网络出版服务 编辑:程序博客网 时间:2024/05/17 04:58
TableLayout表格布局,将子元素的位置分配到行或列中。TableLayout布局由许多的TableRow(行) 组成,它没有列的概念,列是由行中的控件数目决定的。TableLayout布局也是实际中常用的布局方式。
TableLayout布局不会显示行、列 、单元格的边框线。TableLayout布局应用如图7-17所示。
图7-17 TableLayout1
TableLayout布局文件请参考代码清单7-20,完整代码请参考chapter7_5工程中tablelayout1.xml代码部分(chapter7_5/res/layout/tablelayout1.xml)。
【代码清单7-20】
<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:layout_height="match_parent">
<TableRow>
<TextView android:text="@string/row1_1" android:padding="3dip" />
<TextView android:text="@string/row1_2" android:padding="3dip" />
<TextView android:text="@string/row1_3" android:padding="3dip" />
</TableRow>
<TableRow>
<TextView android:text="@string/row2_1" android:padding="3dip" />
<TextView android:text="@string/row2_2" android:padding="3dip" />
<TextView android:text="@string/row2_3" android:padding="3dip" />
</TableRow>
<TableRow>
<TextView android:text="@string/row3_1" android:padding="3dip" />
<TextView android:text="@string/row3_2" android:padding="3dip" />
<TextView android:text="@string/row3_3" android:padding="3dip" />
</TableRow>
<TableRow>
<TextView android:text="@string/row4_1" android:padding="3dip" />
<TextView android:text="@string/row4_2" android:padding="3dip" />
<TextView android:text="@string/row4_3" android:padding="3dip" />
</TableRow>
<TableRow>
<TextView android:text="@string/row5_1" android:padding="3dip" />
<TextView android:text="@string/row5_2" android:padding="3dip" />
<TextView android:text="@string/row5_3" android:padding="3dip" />
</TableRow>
<TableRow>
<TextView android:text="@string/row6_1" android:padding="3dip" />
<TextView android:text="@string/row6_2" android:padding="3dip" />
<TextView android:text="@string/row6_3" android:padding="3dip" />
</TableRow>
</TableLayout>
下面再看一个合并单元格TableLayou布局应用图7-18所示。
图7-18 TableLayout2
TableLayout布局文件请参考代码清单7-21,完整代码请参考chapter7_5工程中tablelayout2.xml代码部分(chapter7_5/res/layout/tablelayout2.xml)。
【代码清单7-21】
<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:layout_height="match_parent"
android:stretchColumns="0,1,2">
<TableRow>
<TextView android:text="@string/row1_1" android:padding="3dip" />
<TextView android:text="@string/row1_2" android:padding="3dip" />
<TextView android:text="row1_3" android:padding="3dip" />
</TableRow>
<TableRow>
<TextView android:text="@string/row2_1" android:padding="3dip" />
<TextView android:text="@string/row2_2" android:padding="3dip"
android:layout_span="2" android:background="#ff0060" />
</TableRow>
<TableRow>
<TextView android:text="@string/row3_1" android:padding="3dip" />
<!-- android:layout_column="1" -->
<TextView android:text="@string/row3_2" android:padding="3dip" />
<TextView android:text="row3_3" android:padding="3dip" />
</TableRow>
<TableRow>
<TextView android:text="@string/row4_1" android:padding="3dip" />
<TextView android:text="@string/row4_2" android:padding="3dip" />
<TextView android:text="row4_3" android:padding="3dip" />
</TableRow>
<TableRow>
<TextView android:text="@string/row5_1" android:padding="3dip" />
<TextView android:text="@string/row5_2" android:padding="3dip" />
<TextView android:text="row5_3" android:padding="3dip" />
</TableRow>
<TableRow>
<TextView android:text="@string/row6_1" android:padding="3dip" />
<TextView android:text="@string/row6_2" android:padding="3dip" />
<TextView android:text="row6_3" android:padding="3dip" />
</TableRow>
</TableLayout>
TableLayout标签内的android:stretchColumns="0,1,2"属性是第一列、第二列、第三列自动调节列宽。<TableRow>内的TextView控件中的属性android:layout_span="2"是合并一个单元格,如图7-18显示的粉色背景就是合并的单元格。
出自《Android开发案例驱动教程》第七章
TableLayout布局不会显示行、列 、单元格的边框线。TableLayout布局应用如图7-17所示。
图7-17 TableLayout1
TableLayout布局文件请参考代码清单7-20,完整代码请参考chapter7_5工程中tablelayout1.xml代码部分(chapter7_5/res/layout/tablelayout1.xml)。
【代码清单7-20】
<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:layout_height="match_parent">
<TableRow>
<TextView android:text="@string/row1_1" android:padding="3dip" />
<TextView android:text="@string/row1_2" android:padding="3dip" />
<TextView android:text="@string/row1_3" android:padding="3dip" />
</TableRow>
<TableRow>
<TextView android:text="@string/row2_1" android:padding="3dip" />
<TextView android:text="@string/row2_2" android:padding="3dip" />
<TextView android:text="@string/row2_3" android:padding="3dip" />
</TableRow>
<TableRow>
<TextView android:text="@string/row3_1" android:padding="3dip" />
<TextView android:text="@string/row3_2" android:padding="3dip" />
<TextView android:text="@string/row3_3" android:padding="3dip" />
</TableRow>
<TableRow>
<TextView android:text="@string/row4_1" android:padding="3dip" />
<TextView android:text="@string/row4_2" android:padding="3dip" />
<TextView android:text="@string/row4_3" android:padding="3dip" />
</TableRow>
<TableRow>
<TextView android:text="@string/row5_1" android:padding="3dip" />
<TextView android:text="@string/row5_2" android:padding="3dip" />
<TextView android:text="@string/row5_3" android:padding="3dip" />
</TableRow>
<TableRow>
<TextView android:text="@string/row6_1" android:padding="3dip" />
<TextView android:text="@string/row6_2" android:padding="3dip" />
<TextView android:text="@string/row6_3" android:padding="3dip" />
</TableRow>
</TableLayout>
下面再看一个合并单元格TableLayou布局应用图7-18所示。
图7-18 TableLayout2
TableLayout布局文件请参考代码清单7-21,完整代码请参考chapter7_5工程中tablelayout2.xml代码部分(chapter7_5/res/layout/tablelayout2.xml)。
【代码清单7-21】
<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:layout_height="match_parent"
android:stretchColumns="0,1,2">
<TableRow>
<TextView android:text="@string/row1_1" android:padding="3dip" />
<TextView android:text="@string/row1_2" android:padding="3dip" />
<TextView android:text="row1_3" android:padding="3dip" />
</TableRow>
<TableRow>
<TextView android:text="@string/row2_1" android:padding="3dip" />
<TextView android:text="@string/row2_2" android:padding="3dip"
android:layout_span="2" android:background="#ff0060" />
</TableRow>
<TableRow>
<TextView android:text="@string/row3_1" android:padding="3dip" />
<!-- android:layout_column="1" -->
<TextView android:text="@string/row3_2" android:padding="3dip" />
<TextView android:text="row3_3" android:padding="3dip" />
</TableRow>
<TableRow>
<TextView android:text="@string/row4_1" android:padding="3dip" />
<TextView android:text="@string/row4_2" android:padding="3dip" />
<TextView android:text="row4_3" android:padding="3dip" />
</TableRow>
<TableRow>
<TextView android:text="@string/row5_1" android:padding="3dip" />
<TextView android:text="@string/row5_2" android:padding="3dip" />
<TextView android:text="row5_3" android:padding="3dip" />
</TableRow>
<TableRow>
<TextView android:text="@string/row6_1" android:padding="3dip" />
<TextView android:text="@string/row6_2" android:padding="3dip" />
<TextView android:text="row6_3" android:padding="3dip" />
</TableRow>
</TableLayout>
TableLayout标签内的android:stretchColumns="0,1,2"属性是第一列、第二列、第三列自动调节列宽。<TableRow>内的TextView控件中的属性android:layout_span="2"是合并一个单元格,如图7-18显示的粉色背景就是合并的单元格。
出自《Android开发案例驱动教程》第七章
- 7.5 TableLayout布局详解
- TableLayout表格布局详解
- TableLayout表格布局详解
- TableLayout表格布局详解
- android:TableLayout 布局详解
- TableLayout表格布局详解
- TableLayout布局详解
- android:TableLayout表格布局详解
- android:TableLayout表格布局详解
- android:TableLayout表格布局详解
- android:TableLayout表格布局详解
- android:TableLayout表格布局详解
- android:TableLayout表格布局详解
- android:TableLayout表格布局详解
- Android TableLayout表格布局详解
- android:TableLayout表格布局详解
- android:TableLayout表格布局详解
- android:TableLayout表格布局详解
- 学习笔记11 各种浏览器的滤镜效果
- Ubuntu下adb环境变量设置
- PC 110102 Minesweeper 扫雷//水题
- PBOC/EMV之文件结构
- [CTO俱乐部第49期]创业企业招募优秀IT人才的四个关键点
- 7.5 TableLayout布局详解
- Oracle 10053 事件
- 解决QQ启动慢的好方法
- 微软 .Net Micro Framework 相关开发资源链接汇总
- android上层应用apk到G-sensor driver的大致流程
- Windows消息大全
- 2.Oracle Database Vault - Rule_Set
- 这该死的社保
- 16大著名网站设计界面 今夕大对比