android gridlayout columnSpan 不跨越

android gridlayout columnSpan not spanning

用途:

我正在尝试使用 GridLayoutButtons

创建一个简单的 键盘

使用 columnSpan feature of a GridLayout,我的数字小键盘由按钮 0-9 和一个跨越 2 列的清除按钮组成。

问题:

本应跨越 2 列的 clear Button 无法正常运行,即它根本没有跨越 2 列。

GridLayout 片段:

    <GridLayout
            android:layout_width="wrap_content"
            android:layout_height="match_parent">
        <Button
                android:layout_row="0"
                android:layout_column="0"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/button1"
                android:text="1"/>
        <Button
                android:layout_row="0"
                android:layout_column="1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/button2"
                android:text="2"/>
        <Button
                android:layout_row="0"
                android:layout_column="2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/button3"
                android:text="3"/>
        <Button
                android:layout_row="1"
                android:layout_column="0"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/button4"
                android:text="4"/>
        <Button
                android:layout_row="1"
                android:layout_column="1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/button5"
                android:text="5"/>
        <Button
                android:layout_row="1"
                android:layout_column="2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/button6"
                android:text="6"/>
        <Button
                android:layout_row="2"
                android:layout_column="0"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/button7"
                android:text="7"/>
        <Button
                android:layout_row="2"
                android:layout_column="1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/button8"
                android:text="8"/>
        <Button
                android:layout_row="2"
                android:layout_column="2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/button9"
                android:text="9"/>
        <Button
                android:layout_row="3"
                android:layout_column="0"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/button0"
                android:text="0"/>
        <Button
                android:layout_row="3"
                android:layout_column="1"
                android:layout_columnSpan="2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/buttonClear"
                android:text="Clear"/>


    </GridLayout>

我错过了什么,我该如何解决?

添加layout_gravity属性:

<Button
    android:layout_row="3"
    android:layout_column="1"
    android:layout_columnSpan="2"
    android:layout_gravity="fill_horizontal"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/buttonClear"
    android:text="Clear"/>