从字面上来看,TableLayout也比较简单,关键是要对相关的属性要熟悉,先看一个简单的例子(后面为效果图):
<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:stretchColumns="0,1,2"
android:shrinkColumns="1,2"
>
<TextView
android:text="Table Test"
android:gravity="center"/>
<TableRow>
<TextView
android:layout_column="1"
android:text="姓名"
android:gravity="center"/>
<TextView
android:text="基本信息"
android:gravity="center"/>
</TableRow>
<TableRow>
<TextView
android:text=" 1 "
android:gravity="center"/>
<TextView
android:text="hoyah"
android:gravity="left"/>
<TextView
android:text="Wuhan University"
android:gravity="right"/>
</TableRow>
<TableRow>
<TextView
android:text=" 2 "
android:gravity="center"/>
<TextView
android:text="Google"
android:gravity="left"/>
<TextView
android:text="hello Google"
android:gravity="right"/>
</TableRow>
<TableRow>
<TextView
android:text="3"
android:gravity="center"/>
<TextView
android:text="Android"
android:gravity="left"/>
<TextView
android:text="Android OS"
android:gravity="right"/>
</TableRow>
</TableLayout>
布局讲解:
android:collapse="1
隐藏该TableLayout里的TableRow的列1,即第2列(从0开始计算),若有多列要隐藏,用“,”隔开。
android:stretchColumns="0,1,2"
设置列0、1、2为可伸展列。
android:shrinkColumns="1,2"
设置列1、2为可收缩列。
android:background="@drawable/picture_name"
本例中没有涉及此属性,它是要设置当前view 的背景图片,图片文件应该放在res文件夹下。
接着我们再看看android官方文档中给出的例子:
<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:stretchColumns="1">
<TableRow>
<TextView
android:layout_column="1"
android:text="Open..."
android:padding="3dip" />
<TextView
android:text="Ctrl-O"
android:gravity="right"
android:padding="3dip" />
</TableRow>
<TableRow>
<TextView
android:layout_column="1"
android:text="Save..."
android:padding="3dip" />
<TextView
android:text="Ctrl-S"
android:gravity="right"
android:padding="3dip" />
</TableRow>
<TableRow>
<TextView
android:layout_column="1"
android:text="Save As..."
android:padding="3dip" />
<TextView
android:text="Ctrl-Shift-S"
android:gravity="right"
android:padding="3dip" />
</TableRow>
<View
android:layout_height="2dip"
android:background="#FF909090" />
<TableRow>
<TextView
android:text="X"
android:padding="3dip" />
<TextView
android:text="Import..."
android:padding="3dip" />
</TableRow>
<TableRow>
<TextView
android:text="X"
android:padding="3dip" />
<TextView
android:text="Export..."
android:padding="3dip" />
<TextView
android:text="Ctrl-E"
android:gravity="right"
android:padding="3dip" />
</TableRow>
<View
android:layout_height="2dip"
android:background="#FF909090" />
<TableRow>
<TextView
android:layout_column="1"
android:text="Quit"
android:padding="3dip" />
</TableRow>
</TableLayout>
效果图如下,大家可以上机调试一下:

发表评论
-
startActivityForResult 简介
2011-03-29 15:55 1284依次打开Activity A1--A2--A3--A4 这时 ... -
startActivityForResult
2011-03-29 15:49 1146startActivityForResult 方法-- ... -
史上最全的Android的Tab与TabHost讲解
2011-03-28 11:22 1591Tab与TabHost 这就是Tab,而盛放Tab的 ... -
Android对话框
2011-03-25 11:21 1125Android 对话框(Dialog)大全 ... -
PreferenceActivity详解
2011-03-25 11:15 1442为了引入这个概率 首先从需求说起 即:现有某Activity专 ... -
TCP/UDP/HTTP
2011-03-25 11:09 1125先来一个讲TCP、UDP和HTTP ... -
9png
2011-03-25 11:08 1914今天学习了用9png图来优化横屏竖屏的UI,使用sdk自带的工 ... -
Notification
2011-03-25 11:07 939Android系统的状态栏(Status Bar)中有一个创新 ... -
一些技巧
2011-03-25 11:03 7871:查看是否有存储卡插入 String status=Envi ... -
布局像素单位
2011-03-25 11:03 827Android的layout文件中有时候可能会指定具体的单位, ... -
使用ActivityGroup来切换Activity和Layout
2011-03-25 11:02 1135在一个主界面中做Activity切换一般都会用TabActiv ... -
activitygroup
2011-03-25 11:01 1730说说tabhost和activitygroup 最近 ... -
线程
2011-03-25 11:01 1014今天在论坛上看到一些关于线程的帖子,我觉得与我理解的有些差异, ... -
类级框架
2011-03-25 11:00 744类集框架:Collection,Map,Iterator,En ... -
Intent打电话
2011-03-25 11:00 1217intent英文意思是意图,pending表示即将发生或来临的 ... -
Intent Uri
2011-03-25 10:59 1068进入联系人页面 1.Intent intent = new I ... -
Service
2011-03-25 10:59 940一、Service的概念 Service是Android程序中 ... -
Broadcast Receiver
2011-03-25 10:56 1948一、Broadcast Receiver简介 Android中 ... -
ContentProvider MIME类型
2011-03-25 10:55 1238Android程序的主要4部分 ... -
ContentProvider-1查询
2011-03-25 10:55 1237今天看了android的官方文档中ContentProvide ...
相关推荐
TableLayout是Android开发中一种特殊的布局方式,它按照表格的形式来组织View组件,适用于需要排列成网格或行列结构的应用场景。下面将详细解释TableLayout的相关知识点。 1. **表格结构**: TableLayout由行(row...
在这个名为"TableLayout1:TableLayout1"的项目中,我们可以推测它可能是一个关于如何使用TableLayout进行布局设计的示例或者教程。 TableLayout允许开发者通过行(Row)和列(Column)来组织布局,每个单元格可以...
在Android开发中,TableLayout是布局管理器的一种,它允许开发者以表格的形式排列视图(Views)。本教程将深入探讨如何在Android应用中使用TableLayout来实现边框效果,同时结合提供的源码进行分析。 首先,...
`TableLayout`是Android提供的一种用于创建表格样式的布局,尤其适合展示数据或者组织组件。本篇文章将深入探讨如何使用`TableLayout`进行动态布局,结合实例来理解其用法。 `TableLayout`是`LinearLayout`的扩展,...
在Android开发中,TableLayout是布局管理器的一种,它允许开发者创建类似电子表格的布局,非常适合展示数据或者组织内容。本篇文章将详细讲解如何利用TableLayout在Android中实现表格效果。 **1. TableLayout基本...
1. **XML布局**:在res/layout目录下创建一个新的XML布局文件,将根元素设置为`<TableLayout>`。例如: ```xml <TableLayout xmlns:android="http://schemas.android.com/apk/res/android"> <!-- TableRow和子...
1. **TableLayout**: 它是主容器,定义了表格的行数和列数。你可以通过添加`TableRow`来创建新的行。 2. **TableRow**: 每个`TableRow`代表表格中的一行,它可以包含多个子视图,这些子视图将被放置在同一行内。 ##...
java TableLayout布局
1. **动态添加和删除行** 在TableLayout中,每一行是由TableRow对象构成的。要动态添加行,首先需要创建一个新的TableRow对象,然后向其中添加需要显示的View(如TextView、EditText等)。一旦Row对象填充完成,将...
1. **创建TableLayout**:在XML布局文件中,首先声明`TableLayout`,并设置其属性。例如,你可以通过`android:stretchColumns="*"`让所有列等宽。 ```xml <TableLayout android:id="@+id/table_layout" android:...
【TableLayout】是Android开发中的一个关键布局组件,主要用于创建表格结构的用户界面。在本视频教程中,讲师深入浅出地介绍了TableLayout的工作原理、使用方法及其在实际应用中的重要性。 TableLayout继承自...
1. **创建外部TableLayout**:首先,我们需要创建一个`TableLayout`作为容器,并设置必要的属性,如列的数量。在XML布局文件中,你可以使用`android:stretchColumns`属性来指定哪些列应该拉伸以填充可用空间。 2. *...
TableLayout是Android开发中一种常用的布局管理器,它允许开发者以表格的形式排列控件,非常适合创建网格或行列结构的用户界面。在Android Studio中,TableLayout通常被XML布局文件用于组织视图,使得屏幕元素可以...
1. `Table.java`:可能是一个自定义的表格组件,用于演示或配合TableLayout使用。 2. `DiagonalLayout.java`:可能是一个与TableLayout类似的布局管理器,但支持对角线方向的布局。 3. `SwingToolkit.java`:可能是...
1. **TableLayout基本概念**: TableLayout是一个线性布局的扩展,它允许开发者在垂直方向上堆叠多个TableRow,每个TableRow就像HTML中的元素,可以包含一个或多个单元格(View或ViewGroup)。 2. **TableRow**: ...
1. **行列定义**:开发者可以预先定义表格的行数和列数,以及每一行和每一列的大小策略。大小策略可以是固定值,也可以是相对于容器大小的百分比。 2. **对齐方式**:TableLayout支持组件的水平和垂直对齐方式,如...
在Android开发中,TableLayout是布局管理器的一种,它允许我们创建二维的表格形式的界面。这个组件在显示数据或创建表单时非常有用。本文将深入探讨如何利用TableLayout自动生成表格,以及相关的Android开发知识。 ...
TableLayout是Android开发中一种布局管理器,它用于在屏幕上创建表格式的布局。在这个布局中,你可以设置行和列,并让这些元素根据需要自动伸缩。TableLayout的主要优点在于其灵活性,可以方便地创建响应式界面,...
1. **基本结构**:TableLayout由多个TableRow组成,每个TableRow代表表格的一行。TableRow内可以包含多个View或ViewGroup,这些View在表格中占据一列。 2. **属性详解**: - `android:stretchColumns`:指定哪些列...
1. **TableLayout**: TableLayout是Android提供的布局管理器,用于展示二维表格数据。它可以包含多个TableRow,每个TableRow又可以包含多个View。TableLayout允许行列对齐,可以设置不同的扩展策略,如STRETCH_...