我正在做:
button.setLayoutParams(new GridView.LayoutParams(65, 65));
根据文档,宽度和高度的单位(以上均为 65)是“像素”。你如何强制它成为与设备无关的像素或“dp”?
您必须使用显示比例因子将其从 dps 转换为像素。
final float scale = getContext().getResources().getDisplayMetrics().density; int pixels = (int) (dps * scale + 0.5f);