我有4列5行的GridLayout
。如果为wrap_content
和layout_width
设置为layout_height
,则所有单元格的大小应相同。但是,当我将其设置为match_parent
时,除了最后一行和列中的那些单元格之外的所有单元格保持相同的大小,最后一行的高度显着增加以填充垂直空间的其余部分,最后一列增加宽度填充水平空间的其余部分。也就是说,大多数细胞根本没有调整大小,第5行和第4列变得非常扭曲。
如何让GridLayout在匹配父级时保持所有单元格的大小相同?
答案 0 :(得分:1)
如果您有静态行数和列数,则可以通过这种方式覆盖单元格视图的方法onMeasure
(如果要填充,例如整个显示):
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int width = getResources().getDisplayMetrics().widthPixels / COLUMN_COUNT;
int height = getResources().getDisplayMetrics().heightPixels / ROW_COUNT;
setMeasuredDimension(width, height);
}
答案 1 :(得分:0)
将所有单元格设置为column_weight = x,其中x是相同的值(1)