Что такое атрибут "android: layout_column"? - PullRequest
1 голос
/ 10 февраля 2012

Код файла 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>

Iя посмотрел в официальных документах по Android, из которых я узнал, android:layout_column означает Индекс столбца, в котором должен быть этот потомок. Я установил атрибут для двухCheckBox: android:layout_column = "1", поэтому я подумал, что два CheckBox должны оба во втором столбце (индекс: 1).но, к моему изумлению, первый CheckBox находится во втором столбце, а второй CheckBox - в третьем столбце, как вы можете видеть ниже: enter image description here

Может кто-нибудь объяснить, почему?

1 Ответ

3 голосов
/ 10 февраля 2012

Вы не можете поместить два Views в один столбец.Первый CheckBox входит в столбец 1, как вы установили его с помощью android:layout_column = "1", а второй CheckBox автоматически помещается во 2-й столбец.

Изменить: Если вы хотите, чтобы ваши флажки были в одном столбце, вы можете просто обернуть их LinearLayout, а затем установить android:layout_column = "1" для этого LinearLayout.

...