tablelayout类以行和列的形式对控件进行管理,每一行为一个tablerow对象,或一个view控件。当为tablerow对象时,可在tablerow下添加子控件,默认情况下,每个子控件占据一列。 当为view时,该view将独占一行。
三个常用的属性
android:collapsecolumns:设置需要被隐藏的列的序号
android:shrinkcolumns:设置允许被收缩的列的列序号
android:stretchcolumns:设置运行被拉伸的列的列序号
学习导图
(1)tablelayout的相关简介
java的swing编程和html中经常会使用到表格,可见表格的应用开发中使用还是比较多的,同样android也为我们提供这样的布局方式。
(2)如何确定行数
a:直接向tablelayout组件,直接占一行
b:如果想在一行添加多个组件, 就需要使用tablerow中添加
c:tablerow中有多少个组件,这一行就会有多少列
(3)三个常用属性(都是从零开始计数)
shrinkable:如果某一列被设置为shrinkable,那么该列的所有单元格的宽度可以被收缩,以保证表格能适应父容器的宽度;
stretchable:如果某一列被设置为stretchable,那么该列的所有单元格的宽度可以拉伸,以保证组件完全填充表格空余空间;
collapsed:如果某一列被设置为collapsed,那么该列的所有单元格的都会被隐藏;
(4)使用实例(为了演示效果没有,所有组件都没有设置id)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
|
<?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" >
<!--定义第一个表格布局,指定第二列允许收缩,第三列拉伸-->
<tablelayout
android:layout_width= "match_parent"
android:layout_height= "wrap_content"
android:shrinkcolumns= "1"
android:stretchcolumns= "2" >
<!-- 直接添加组件会独占一行-->
<button
android:layout_width= "wrap_content"
android:layout_height= "wrap_content"
android:text= "独自占一行"
/>
<tablerow>
<button
android:layout_width= "wrap_content"
android:layout_height= "wrap_content"
android:text= "普通按钮" />
<button
android:layout_width= "wrap_content"
android:layout_height= "wrap_content"
android:text= "收缩按钮" />
<button
android:layout_width= "wrap_content"
android:layout_height= "wrap_content"
android:text= "拉伸按钮" />
</tablerow>
</tablelayout>
<!--定义第二个表格布局指定第二列隐藏-->
<tablelayout
android:layout_width= "match_parent"
android:layout_height= "wrap_content"
android:collapsecolumns= "1" >
<!-- 直接添加组件会独占一行-->
<button
android:layout_width= "wrap_content"
android:layout_height= "wrap_content"
android:text= "独自占一行"
/>
<tablerow>
<button
android:layout_width= "wrap_content"
android:layout_height= "wrap_content"
android:text= "普通按钮" />
<button
android:layout_width= "wrap_content"
android:layout_height= "wrap_content"
android:text= "普通按钮" />
<button
android:layout_width= "wrap_content"
android:layout_height= "wrap_content"
android:text= "普通按钮" />
</tablerow>
</tablelayout>
<!--定义第三个表格布局,指定第二列,第三列都可以被拉伸-->
<tablelayout
android:layout_width= "match_parent"
android:layout_height= "wrap_content"
android:stretchcolumns= "1,2" >
<!-- 直接添加组件会独占一行-->
<button
android:layout_width= "wrap_content"
android:layout_height= "wrap_content"
android:text= "独自占一行"
/>
<tablerow>
<button
android:layout_width= "wrap_content"
android:layout_height= "wrap_content"
android:text= "普通按钮" />
<button
android:layout_width= "wrap_content"
android:layout_height= "wrap_content"
android:text= "拉伸按钮" />
<button
android:layout_width= "wrap_content"
android:layout_height= "wrap_content"
android:text= "拉伸按钮" />
</tablerow>
</tablelayout>
</linearlayout>
|
以上内容是小编给大家介绍的android布局之tablelayout表格布局,希望大家喜欢。