GridView布局中的中心按钮

时间:2018-03-21 08:23:33

标签: android android-layout gridview android-linearlayout

我有4个按钮,我想将它们对齐在中间,但它们之间有一些空间。我尝试使用Frame + GridView布局,Linear + GridView或仅使用GridView布局。

一段时间后,我成功地在屏幕中央显示了按钮,但我无法在它们之间添加任何空格。我尝试调整verticalSpacing布局中的horizontalSpacingGridView,但没有运气。另外,我尝试将android:heightwidth添加到按钮并为其提供值,但这并没有改变任何内容....

这是我的代码:

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal"
    android:gravity="center"
    android:layout_gravity="center"
    android:padding="5dp" >

    <GridLayout
        android:id="@+id/gridview"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:numColumns="2"
        android:verticalSpacing="10dp"
        android:horizontalSpacing="10dp"
        android:stretchMode="columnWidth"
        android:gravity="center">

            <Button
                android:id="@+id/button8"
                android:layout_width="100dp"
                android:layout_height="126dp"
                android:layout_column="0"
                android:layout_row="0"
                android:background="@drawable/toilet" />

            <Button
                android:id="@+id/button28"
                android:layout_width="100dp"
                android:layout_height="126dp"
                android:layout_column="1"
                android:layout_row="0"
                android:background="@drawable/aragaz" />

            <Button
                android:id="@+id/button56"
                android:layout_width="100dp"
                android:layout_height="126dp"
                android:layout_column="0"
                android:layout_row="1"
                android:background="@drawable/broom" />

            <Button
                android:id="@+id/button57"
                android:layout_width="100dp"
                android:layout_height="126dp"
                android:layout_column="1"
                android:layout_row="1"
                android:background="@drawable/shoe" />
        </GridLayout>
</LinearLayout>

这就是我看到按钮的方式:

enter image description here

1 个答案:

答案 0 :(得分:1)

试试这个

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center"
    android:orientation="horizontal"
    android:padding="5dp">

    <GridLayout
        android:id="@+id/gridview"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:layout_gravity="center"
        android:horizontalSpacing="10dp"
        android:numColumns="2"
        android:background="@color/red"
        android:stretchMode="columnWidth"
        android:verticalSpacing="10dp">

        <Button
            android:id="@+id/button8"
            android:layout_width="100dp"
            android:layout_height="126dp"
            android:layout_column="0"
            android:layout_row="0"
            android:layout_margin="5dp"
            android:background="@drawable/ic_launcher_background" />

        <Button
            android:id="@+id/button28"
            android:layout_width="100dp"
            android:layout_height="126dp"
            android:layout_column="1"
            android:layout_row="0"
            android:layout_margin="5dp"
            android:background="@drawable/ic_launcher_background" />

        <Button
            android:id="@+id/button56"
            android:layout_width="100dp"
            android:layout_height="126dp"
            android:layout_column="0"
            android:layout_row="1"
            android:layout_margin="5dp"
            android:background="@drawable/ic_launcher_background" />

        <Button
            android:id="@+id/button57"
            android:layout_width="100dp"
            android:layout_height="126dp"
            android:layout_column="1"
            android:layout_row="1"
            android:layout_margin="5dp"
            android:background="@drawable/ic_launcher_background" />
    </GridLayout>
</LinearLayout>

<强>输出

![enter image description here