我的gridlayout没有像预期的那样膨胀

时间:2017-08-09 15:54:48

标签: android android-layout grid-layout android-gridlayout

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.package.name.MainActivity">

    <GridLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:columnCount="4"
        android:rowCount="4">

        <ImageView
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_column="1"
            android:layout_row="2"
            android:src="@color/colorAccent"/>

        <ImageView
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_column="3"
            android:layout_row="2"
            android:src="@color/colorPrimary"/>

    </GridLayout>

</LinearLayout>

这是我的布局文件。我期待一个4x4网格,第1列,第2行的重点颜色和第3列第2行的主要颜色,其余为空白。但相反,我只是让整个gridlayout充满了强调色,甚至没有一个具有原色的单元格。为什么是这样?我如何实现我的目标?

谢谢!

1 个答案:

答案 0 :(得分:1)

您的第一个ImageView的宽度和高度为match_parent,因此它会自行填充整个布局。您可以通过定义每个ImageView的宽度和高度来看到您想要看到的内容,例如100dp。这不是你想要的,但它可以让你开始。另外,看一下&#34; Excess Space Distribution&#34;在https://developer.android.com/reference/android/widget/GridLayout.html