android - GridLayout 通过仅调整最后一列和行的大小来匹配父级 (Android Studio)

标签 android android-studio grid-layout android-gridlayout

我有一个 4 列和 5 行的 GridLayout。如果为 layout_widthlayout_height 设置为 wrap_content,则所有单元格的大小都应该相同。但是,当我将它设置为 match_parent 时,除最后一行和最后一列中的单元格之外的所有单元格都保持相同大小,最后一行的高度显着增加以填充其余的垂直空间和最后一行列的宽度增加以填充其余的水平空间。也就是说,大多数单元格根本不调整大小,第 5 行和第 4 列变得非常扭曲。

包装内容: enter image description here

匹配父级: enter image description here

我怎样才能让 GridLayout 在匹配父级时保持所有单元格的大小相同?

最佳答案

如果你有静态的行数和列数,你可以用这种方式覆盖单元格 View 的方法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);
}

关于android - GridLayout 通过仅调整最后一列和行的大小来匹配父级 (Android Studio),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28578653/

相关文章:

android - 如何删除重复的数据库记录?

android - Job Scheduler 未在设定的时间间隔内运行

android - 对于 Android Studio 项目,我应该在 Subversion 中忽略哪些文件?

java - 如何在 JAVA 上相应地操作 GridLayout 设置?

java - GridLayout 中的按钮,不可调整大小

java - 如何在旋转之前保存应用程序的当前快照?

android - 无法获取 'https://dl.google.com/dl/android/maven2/com/google/gms/google-services/4.0.1/google-services-4.0.1.pom'

php - 将字符串从应用程序发送到服务器

Java 不断给我坐标乘以 93

java - 使用 Google APIs Java 客户端进行连接和授权