测量单位 px、dip、dp 和 sp 的区别是什么?


当前回答

我已经计算了下面的公式,以便将 dpi 转换为 dp 和 sp

其他回答

我将详细介绍如何准确地将 dp 转换为 px:

如果在 mdpi 设备上运行,150 x 150 px 图像将占屏幕空间的 150 * 150 dp. 如果在 hdpi 设备上运行,150 x 150 px 图像将占屏幕空间的 100 * 100 dp. 如果在 xhdpi 设备上运行,150 x 150 px 图像将占屏幕空间的 75 * 75 dp.

相反的方式:说,你想添加一个图像到你的应用程序,你需要它填写一个100 * 100dp控制。

100 * 100 px 图像为 mdpi 150 * 150 px 图像为 hdpi 200 * 200 px 图像为 xhdpi

您可以从下图中看到 px 和 dp 的差异,您也可以发现 px 和 dp 无法在不同屏幕上保证相同的物理尺寸。

此分類上一篇

我遇到了一篇关于设计不同屏幕分辨率的Android应用程序UI的好文章,我想把它留在这里,只是在这个领域寻找的人。 是的,我知道它在某种程度上被描述在谷歌文件(并在上面的帖子中提到),我读到它,但它对我来说并不好(是的,我可能太愚蠢)。

基本上,唯一适用的 px 时间是 1 px,如果您想要屏幕上的一个像素,就像在分配器的情况下一样:

在 > 160 dpi 上,您可以获得 2-3 像素,

在 > 120 dpi 中,它旋转到 0.

任何与文本和外观的尺寸相关的东西都必须使用 sp 或 pt. 因此,任何与控制器、布局等尺寸相关的东西都必须使用 dp。

您可以在其位置使用 dp 和 dip。