Android 并以 dp 单位编程设置宽度和高度

标签 android scaling

我在做:

button.setLayoutParams(new GridView.LayoutParams(65, 65));

根据文档,宽度和高度的单位(以上均为 65)是“像素”。你如何强制它成为与设备无关的像素或“dp”?

最佳答案

您必须使用显示比例因子将其从 dps 转换为像素。

final float scale = getContext().getResources().getDisplayMetrics().density;
int pixels = (int) (dps * scale + 0.5f);

关于Android 并以 dp 单位编程设置宽度和高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5255184/

相关文章:

python - 加载模型时如何使用 min max scaler 拟合测试数据?

html - 图像缩放导致 firefox/internet explorer 质量差,但 chrome 不会

使用前置摄像头的 Android - 兼容所有设备

android - 在运行时写入 Manifest.xml

java - 如何使用SharedPreferences保存edittext中输入的文本并在另一个Activity中的TextView中显示

actionscript-3 - 如何在 Actionscript 3 中正确缩放旋转的对象?

delphi - 如何处理Windows 11中引入的TForm和自定义缩放?

android - react native 错误:0308010C:数字信封例程::不支持

android - 具有自定义 Uri 的下载管理器

c++ - OpenGL - glm 转换和比例合成