Android开发:表格布局
程序员文章站
2022-05-31 10:56:08
...
表格布局继承自线性布局,其本质依旧是线性布局管理器。
- 如果直接向TableLayout中添加组件,则该组件占据一行。
- 向TableLayout中添加行:TableRow
- 列的宽度:取决于该列中最宽的单元格。
- 表格宽度:取决于父容器的宽度。
- 列数:取决于列数最多的行。
- 行为方式有如下3种:
(1)shrinkColumns
:该列单元格可收缩,以适应父容器的宽度。
(2)stretchColumns
:改列单元格可拉伸,以填满父容器。
(3)collapseColumns
:隐藏该列。
xml文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<!--定义一个表格布局-->
<!--第2列允许收缩,第3列允许拉伸-->
<TableLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:shrinkColumns="1"
android:stretchColumns="2">
<!--直接添加按钮,占据一行-->
<Button
android:id="@+id/btn_A1"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="这个按钮会占据一行"/>
<!--添加一个TableRow-->
<TableRow>
<Button
android:id="@+id/btn_A2_1"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="普通按钮"/>
<Button
android:id="@+id/btn_A2_2"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="收缩按钮"/>
<Button
android:id="@+id/btn_A2_3"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="拉伸按钮"/>
</TableRow>
</TableLayout>
<!--第2个表格布局-->
<!--隐藏第2列-->
<TableLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:collapseColumns="1">
<!--直接添加按钮,占据一行-->
<Button
android:id="@+id/btn_B1"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="这个按钮会占据一行"/>
<!--添加一个TableRow-->
<TableRow>
<Button
android:id="@+id/btn_B2_1"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="普通按钮"/>
<!--第2列:被隐藏了-->
<Button
android:id="@+id/btn_B2_2"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="收缩按钮"/>
<Button
android:id="@+id/btn_B2_3"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="拉伸按钮"/>
</TableRow>
</TableLayout>
<!--第3个表格布局:第2列和第3列可以被拉伸-->
<TableLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:stretchColumns="1,2">
<!--第1行:直接添加按钮,占据一行-->
<Button
android:id="@+id/btn_C1"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="这个按钮会占据一行"/>
<!--第2行:添加一个TableRow-->
<TableRow>
<Button
android:id="@+id/btn_C2_1"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="普通按钮"/>
<Button
android:id="@+id/btn_C2_2"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="拉伸按钮"/>
<Button
android:id="@+id/btn_C2_3"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="拉伸按钮"/>
</TableRow>
<!--第3行:添加一个TableRow-->
<!--第3行只有两个单元格,因此第3个单元格是空着的-->
<TableRow>
<Button
android:id="@+id/btn_C3_1"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="普通按钮"/>
<Button
android:id="@+id/btn_C3_2"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="拉伸按钮"/>
</TableRow>
</TableLayout>
</LinearLayout>
推荐阅读
-
Android开发利器之pidcat安装方式
-
eclipse搭建android开发环境详细步骤
-
android开发之eclipse adt升级到20.0无法新建android工程解决办法
-
Android开发之拖动条/滑动条控件、星级评分控件功能的实例代码
-
Android开发之使用150行代码实现滑动返回效果
-
浅谈Android手机联系人开发之增删查改功能
-
Android中使用ListView绘制自定义表格技巧分享
-
在android开发中进行数据存储与访问的多种方式介绍
-
Android开发中怎样调用系统Email发送邮件(多种调用方式)
-
android开发中ListView与Adapter使用要点介绍