Android中的表格布局TableLayout

表格布局最主要的三个属性:

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:id="@+id/TableLayout01"
        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:id="@+id/ok1"
            android:text="独"
            />
        <!-- 添加一个表格行 -->
        <TableRow android:layout_width="match_parent" android:layout_height="wrap_content">
            <Button android:id="@+id/ok2" android:layout_width="wrap_content"
                android:layout_height="wrap_content" android:text="普"/>
            <Button android:id="@+id/ok3" android:layout_width="wrap_content"
                android:layout_height="wrap_content" android:text="收"/>
            <Button android:id="@+id/ok4" android:layout_width="wrap_content"
                android:layout_height="wrap_content" android:text="拉"/>
        </TableRow>
    </TableLayout>

    <!-- 定义第二个表格布局,指定第2列隐藏 -->
    <TableLayout android:id="@+id/TableLayout02" android:layout_marginTop="30dp"
        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 android:layout_width="match_parent" android:layout_height="wrap_content">
            <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>

    <!-- 定义第三个表格布局,指定第2列和第三列允许被拉伸 -->
	<TableLayout android:id="@+id/TableLayout03"
	    android:layout_width="match_parent"
	    android:layout_height="wrap_content"
	    android:stretchColumns="1,2" android:layout_marginTop="30dp"
	    >
      <Button android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:text="独"
     />
      <TableRow android:layout_width="match_parent" android:layout_height="wrap_content">
            <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>
       <!-- 定义一个表格行 -->
      <TableRow android:layout_width="match_parent" android:layout_height="wrap_content">
           <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>

效果:

总结:

如果没有用tableRow,直接用组件,将自己独占一行,并且填充父窗口

而如果用tableRow,上下两行各列将对齐。

时间: 2024-10-03 21:22:37

Android中的表格布局TableLayout的相关文章

.Net程序员玩转Android开发---(8)表格布局TableLayout

表格布局TableLayout是Android中比较常用的一个布局控件,既然是表格,肯定有行和列,TableLayout中的行有TableRow组成,列根据每行控件的数量来确定 假如第一行有3个控件,第2行有4个控件,那么这个表格的列数就去最大列数,即4列. 1.属性介绍 表格有以下几个重要属性 android:shrinkColumns="2" 自动收缩的列,多个列用逗号隔开,自动收缩的意思是如果该列的内容超出了表格列的宽度,自动向下显示 android:stretchColumns

【Android】利用表格布局,Android中xml文件与java的交互制作登录界面

登录界面是图形编程.网页编程的一个经典而又基础的程序. 在安卓中,如图所示一个基本登录界面: 点击取消按钮就关闭这个程序,点击登录按钮则显示用户输入的用户名与密码. 一.基本布局 这个程序利用到安卓中的表格布局. 先打开res/values/strings.xml中定义几个字符串.之所以不直接把字符串直接写在activity_main.xml的组件中,是因为免得Eclipse出现警告.这个文件的代码如下: <?xml version="1.0" encoding="ut

android中的五大布局和过程流向

1.首先说明android中的五大布局: 1.绝对布局:AbsoluteLayout(按照绝对坐标来布局组件) 2.相对布局:RelativeLayout(相对其它组件的布局方式) 3.线性布局:LinearLayout(按照垂直或者水平方向布局的组件,通                        过"android:orientation"属性可以设置线性布局的方向. 属性值有垂直(vertical)和水平(horizontal)两种. android:orientation:可

Android中的五大布局和logcat打印日志

在android中的布局有五大类,有的时候你可能用到一种,但有的时候你也可能需要两种或者三种布局同时一起使用.这五种布局为别为:LinearLayout(线性布局),FrameLayout(框架布局),RelativeLayout(相对布局),TableLayout(表格布局),AbsoluteLayout(坐标布局): LinearLayout:被称为线性布局,分为水平和垂直,设置的垂直或水平的属性值,来排列所有的子元素.所有的子元素都被堆放在其它元素之后,因此一个垂直列表的每一行只会有一个元

Android中的LinearLayout布局

LinearLayout : 线性布局 在一般情况下,当有很多控件需要在一个界面列出来时,我们就可以使用线性布局(LinearLayout)了,  线性布局是按照垂直方向(vertical)或水平方向(horizontal)的顺序依次排序子元素,每一个子元素都位于前一个元素之后,下面我们就简单的了解一下吧 在XML布局文件中会遇到如下一些单位 px:是屏幕的像素点   dp:一个基于density的抽象单位,屏幕的物理尺寸   sp:同dp相似,但会根据用户的字体大小进行缩放 XML代码如下:改

Android中修改键盘布局或者按键映射时的注意点

在Android中修改键盘布局或者按键映射时,处理在inputdevice中修改上报的SCANCODE之外,还需要修改相应的kl文件. 具体原理: 当一个inputdevice的driver将按键的SCANCODE上报给EventHub之后,EventHub还会用SCANCODE去获取具体的Keycode,这一步就是根据相应的inputdevice的kl文件中的配置得到的,所以如果仅仅上报SCANCODE,不修改kl文件,则会导致SCANCODE是正确的,但是找不到相应的mapkey,从而上报的

Android五大布局之一表格布局(TableLayout)

一.TableLayout(表格布局)常用属性: android:collapseColumns:设置需要被隐藏的列的序号 android:shrinkColumns:设置允许被收缩的列的列序号 android:stretchColumns:设置运行被拉伸的列的列序号 以上这三个属性的列号都是从0开始算的,比如shrinkColunmns = "2",对应的是第三列! 可以设置多个,用逗号隔开比如"0,2",如果是所有列都生效,则用"*"号即可 

Android——布局(线性布局linearLayout,表格布局TableLayout,帧布局FrameLayout)

线性布局: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent&q

Android布局之表格布局TableLayout

一.TableLayout概述 TableLayout表格布局模型以行列的形式管理子控件,每一行为一个TableRow的对象,当然也可以是一个View的对象 二.TableLayout的全局属性  android:collapseColumns = "1,2"      隐藏从0开始索引列,列直接必须ongoing逗号隔开:1,2,5 android:shrikColumns = "1,2"       收缩从0开始的索引列.当可收缩的列太宽(内容过多)不会被挤出屏