【发布时间】:2016-05-08 19:00:06
【问题描述】:
我正在尝试用 6 个图像按钮填充 GridView,所有这些按钮的宽度和高度都设置为 0dp,并且在行和列上都加权
在 Android Studio 中进行编码时,设计师给出了预期的结果,如图所示
但是,在设备上运行代码时,没有显示任何图像按钮。经过大量的头疼和谷歌搜索后,我尝试在 Android Studio 中更改为 renering API 并将其设置为低于 23 的任何值都会产生相同的行为 - 我的网格视图中没有显示任何项目。
这是我的代码..
<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>
【问题讨论】:
-
您是否设法找到解决该问题的方法?我现在正在为同样的问题而苦苦挣扎!
-
@Anorflame 如果我没记错的话,我发现加权 GridLayout 只能从 Marshmallow 开始工作。我最终只是将布局更改为一对线性布局(每行一个)来处理我的特殊情况
-
我明白了...我最终使用了相同的解决方案。好吧,无论如何,谢谢!
标签: android grid-layout android-gridlayout