什么是“android:layout_column”属性?

时间:2012-02-10 06:29:18

标签: android android-layout android-tablelayout

main.xml 文件代码:

<TableRow 
android:id="@+id/TableRow01" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content">
    <TextView 
    android:text="User" 
    android:id="@+id/TextView01" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"></TextView>

    <EditText 
    android:text="" 
    android:id="@+id/username" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"

    ></EditText>

    <TextView 
    android:text="Test" 
    android:id="@+id/usernameTest" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"

    ></TextView>

</TableRow>

<TableRow 
android:id="@+id/TableRow05" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content"
>
    <TextView 
    android:text="Hobby" 
    android:id="@+id/hobby" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"></TextView>

    <CheckBox 
    android:text="A" 
    android:id="@+id/reading" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"
    android:layout_column="1"
    ></CheckBox>
    <CheckBox 
    android:text="B" 
    android:id="@+id/swimming" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"
    android:layout_column="1"
    ></CheckBox>


</TableRow>

我查看了官方的Android文档,我从中了解到,android:layout_column表示 此子项所在的列的索引。 I我已经在两个CheckBox上设置了属性:android:layout_column = "1",所以我认为第二列(索引:1)中的两个CheckBox都应该。但令我惊讶的是,第一列CheckBox位于第二列,第二列CheckBox位于第三列,如下所示: enter image description here

任何人都可以解释原因吗?

1 个答案:

答案 0 :(得分:3)

您不能将两个Views放在同一列中。当您使用CheckBox设置时,第一个android:layout_column = "1"位于第1列,第二个CheckBox会自动放置在第2列中。

修改:如果您确实需要同一列中的复选框,则可以使用LinearLayout对其进行换行,然后为android:layout_column = "1"设置LinearLayout