android gridview相等大小的单元格

时间:2016-01-20 04:50:54

标签: android xml gridview

我正在尝试为练习制作计时器应用程序,而我遇到的问题是gridview与其他人没有相同的大小。

这是代码的一部分

 <GridLayout
    android:layout_width="fill_parent"
    android:layout_height="match_parent"
    android:layout_below="@id/passwordField"
    android:columnCount="3"
    android:rowCount="4"
    android:verticalSpacing="0dp"
    android:horizontalSpacing="0dp"
    android:stretchMode="columnWidth">


    <Button
        android:id="@+id/btnOne"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_column="0"
        android:layout_gravity="fill_horizontal"
        android:layout_row="0"
        android:onClick="addInput"
        android:text="@string/one" />

    <Button
        android:id="@+id/btnTwo"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_column="1"
        android:layout_gravity="fill_horizontal"
        android:layout_row="0"
        android:onClick="addInput"
        android:text="@string/two" />

    <Button
        android:id="@+id/btnThree"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_column="2"
        android:layout_gravity="fill_horizontal"
        android:layout_row="0"
        android:onClick="addInput"
        android:text="@string/three" /> </GridLayout>

之后还有更多按钮,但这就是我现在需要展示的全部内容 从图像中可以看出: enter image description here

它没有相同的单元格大小,其中第3列比其他列大。 我该怎么做才能解决这个问题?

我之前已将RelativeLayout放在正确的位置,但按钮并没有拉伸以填充宽度。

2 个答案:

答案 0 :(得分:2)

将此属性应用于每个按钮xml

     android:layout_columnWeight="1"

答案 1 :(得分:2)

layout_columnWeight是缺失的部分。请注意,您也可以简化Button声明:

<GridLayout
        android:layout_width="fill_parent"
        android:layout_height="match_parent"
        android:layout_below="@id/passwordField"
        android:columnCount="3"
        android:rowCount="4"
        android:verticalSpacing="0dp"
        android:horizontalSpacing="0dp">


        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:onClick="addInput"
            android:text="@string/one"
            android:layout_columnWeight="1"/>

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_columnWeight="1"
            android:onClick="addInput"
            android:text="@string/two" />

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_columnWeight="1"
            android:onClick="addInput"
            android:text="@string/three" />

    </GridLayout>