android:layout_column究竟做了什么?

Alp*_*r77 23 android android-layout android-tablelayout

我正在学习机器人并且正在努力探索这个特定的布局属性,阅读谷歌开发文档它说:

android:layout_column
Run Code Online (Sandbox Code Playgroud)

该子项应该在的列的索引.必须是整数值,例如"100".这也可以是对资源的引用(其形式为"@〔包:]类型:名称为")("?[包:] [类型:]名称"的形式)或主题属性包含该类型的值.这对应于全局属性资源符号layout_column.

任何人都可以解释这是如何映射到一个html等价物(因为表格行似乎从他们那里大量借用)?

这是它所采用的柱数 - 例如colspan?

Com*_*are 28

呃,它的意思是"这个孩子应该在的列的索引".唯一棘手的部分是列从0开始.

例如:

<?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:text="URL:" />
        <EditText android:id="@+id/entry"
            android:layout_span="3"/>
    </TableRow>
    <TableRow>
        <Button android:id="@+id/cancel"
            android:layout_column="2"
            android:text="Cancel" />
        <Button android:id="@+id/ok"
            android:text="OK" />
    </TableRow>
</TableLayout>
Run Code Online (Sandbox Code Playgroud)

上述布局中的两行都有四列.第一个列有四列,因为它有一个TextView列0和一个EditText生成列1,2和3.第二列有四列,因为它跳过列0和1并将两个Button小部件放在第2 列和第3列中,这是由于第一个android:layout_column="2"属性Button.

  • @ Alphatester77:是的,虽然`TableLayout`与HTML表共享许多共性,但这不是其中之一.可以把`android:layout_column`想象成"在我左边打一些空的<td>`标签来占用一些列"的简写. (8认同)