如何在 GridLayout (Android) 中将最后两个块调整为全宽?

how in GridLayout (Android) to fit the last two blocks to full width?

我目前正在学习Android前端开发,老师给我们布置了这个任务:

我们需要在 Android Studio 中创建下一个网格:Task Grid using GridLayout. For now I only created this。

有没有办法以全角显示 GridLayout 的最后两个块?

我不确定它是否有效,但是this post不推荐它。

您可以在 GridLayout 下方放置一个 LinearLayout 以及 android:orientation="vertical"android:width="match_parent" 或另一个 GridLayout

如果您没有任何包装布局,请将它们都包装到 LinearLayoutandroid:orientation="vertical" 中,并将原始 GridLayout 的所有属性放在那里。

看看SpanSizeLookup

类似于:

val layoutManager = GridLayoutManager(activity, 2)
layoutManager.spanSizeLookup = object : GridLayoutManager.SpanSizeLookup() {
    override fun getSpanSize(position: Int): Int {
        return when (position) {
            YOUR_CONDITION -> 2
            else -> 1
        }
   }
}
recyclerView.layoutManager = layoutManager

用一些符合您要求的逻辑替换 YOUR_CONDITION,使单元格高出两倍。