网格布局列跨度不起作用

时间:2014-07-26 12:45:02

标签: android android-studio android-gridlayout

网格布局列跨度不占用2列。所有列在我的android工作室左侧对齐。在我的情况下,我有4列,所有子项的列间距为2。

<GridLayout
            xmlns:android="http://schemas.android.com/apk/res/android"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="horizontal"
            android:columnCount="2"
        >
            <TextView
            android:text="title1"
            android:layout_columnSpan="1"
                android:layout_marginLeft="25dp"
                android:layout_marginTop="25dp"
                android:textStyle="bold"

                />

            <TextView
                android:text="value1"
                android:layout_columnSpan="1"
                android:layout_marginTop="25dp"
                android:layout_marginLeft="25dp"

            />

            <TextView
                android:text="title2"
                android:layout_columnSpan="2"
                android:layout_marginLeft="25dp"
                android:layout_marginTop="25dp"
                android:textStyle="bold"
                 />



            <EditText
                android:layout_width="match_parent"
                android:layout_columnSpan="2"
                android:layout_marginLeft="25dp"
                android:layout_marginRight="25dp"
                />

            <TextView
                android:text="title3"
                android:layout_columnSpan="2"
                android:layout_marginLeft="25dp"
                android:layout_marginTop="25dp"
                android:textStyle="bold"
                />



            <EditText
                android:layout_width="match_parent"
                android:layout_columnSpan="2"
                android:layout_marginLeft="25dp"
                android:layout_marginRight="25dp"
                />

            <TextView
                android:text="title4"
                android:layout_columnSpan="1"
                android:layout_marginTop="25dp"
                android:layout_marginLeft="25dp"
                android:textStyle="bold"/>

            <EditText
                 android:inputType="number"
                android:layout_columnSpan="1"
                android:layout_marginLeft="25dp"
                android:layout_marginTop="25dp"
                />

            <TextView
                android:text="title5"
                android:layout_columnSpan="1"

                android:layout_marginTop="25dp"
                android:layout_marginLeft="25dp"
                android:textStyle="bold"/>

            <EditText
                android:inputType="number"
                android:layout_columnSpan="1"
                android:layout_marginLeft="25dp"
                android:layout_marginTop="25dp"

                />
        </GridLayout>

在上面的代码中,最后两个编辑文本(标题4和5)未对齐其宽度,其父级.layout_width = match_parent在这里不起作用。

1 个答案:

答案 0 :(得分:4)

我设法完成了你想要的东西。只需将layout_gravity和margin_right添加到最后两个EditTexts,如下所示:

    <EditText
    android:layout_width="wrap_content"
    android:layout_columnSpan="1"
    android:layout_gravity="fill_horizontal"
    android:layout_marginLeft="25dp"
    android:layout_marginRight="25dp"
    android:layout_marginTop="25dp"
    android:inputType="number" />

这将完成这项工作。