android 网格布局在 23 岁以下的 API 中不显示加权项

android gridlayout not showing weighted items in apis under 23

我正在尝试用 6 个图像按钮填充 GridView,所有这些图像按钮的宽度和高度都设置为 0dp,并且在行和列上都加权

在 Android Studio 中编码时,设计师给出了想要的结果,如图所示

然而,当涉及到 运行 设备上的代码时,出现了 none 个图像按钮。经过大量的摸索和谷歌搜索后,我尝试在 Android Studio 中更改为 renering API 并将其设置为低于 23 的任何值都会产生相同的行为 - none 中显示的项目我的网格视图。

这是我的代码..

    <GridLayout
        android:layout_width="0dp"
        android:background="#ff0000"
        android:stretchMode="columnWidth"
        android:rowCount="2"
        android:columnCount="3"
        android:layout_weight="1"
        android:layout_height="match_parent">


        <ImageButton
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:layout_columnWeight="1"
            android:layout_rowWeight="1"
            android:padding="0dp"
            android:scaleType="fitCenter"
            android:src="@drawable/ic_launcher"/>


        <ImageButton
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:adjustViewBounds="true"
            android:layout_columnWeight="1"
            android:layout_rowWeight="1"
            android:scaleType="fitCenter"
            android:src="@drawable/ic_launcher"/>

        <ImageButton
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:layout_columnWeight="1"
            android:layout_rowWeight="1"
            android:scaleType="fitCenter"
            android:src="@drawable/ic_launcher"/>

        <ImageButton
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:layout_columnWeight="1"
            android:layout_rowWeight="1"
            android:scaleType="fitCenter"
            android:src="@drawable/ic_launcher"/>

        <ImageButton
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:layout_columnWeight="1"
            android:layout_rowWeight="1"
            android:scaleType="fitCenter"
            android:src="@drawable/ic_launcher"/>

        <ImageButton
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:layout_columnWeight="1"
            android:layout_rowWeight="1"
            android:scaleType="fitCenter"
            android:src="@drawable/ic_launcher"/>


    </GridLayout>

我遇到了完全相同的问题,但能够使用 android.support.v7.widget.GridLayoutapp:layout_columnWeight="1" 解决它(而不仅仅是 'GridLayout' 和 'android :layout_columnWeight'

有关更多详细信息,请参阅我对类似问题的回复: android gridlayout not showing in emulator API 22