Man*_*mar 2 xml android android-layout
我有在 XHDPI 中设计的屏幕。
我必须将所有填充、边距值转换dp为LDPI, MDPI, HDPI, XXHDPI,XXXHDPI
任何人都可以建议我如何计算dp以下屏幕的值假设我有paddingTop那么xhdpi我们56dp给出的值是 ldpi,,mdpi和xxhdpixxxhdpi
请建议我。
定义 UI 布局时应使用的虚拟像素单位,以与密度无关的方式表达布局尺寸或位置。与密度无关的像素相当于 160 dpi 屏幕上的一个物理像素,这是系统为“中等”密度屏幕假定的基线密度。在运行时,系统根据使用的屏幕的实际密度,根据需要透明地处理 dp 单位的任何缩放。dp 单位到屏幕像素的转换很简单:px = dp * (dpi / 160)。例如,在 240 dpi 屏幕上,1 dp 等于 1.5 个物理像素。在定义应用程序的 UI 时,应始终使用 dp 单位,以确保 UI 在不同密度的屏幕上正确显示。
如果你想知道 xhdpi 中的 56dp 是什么,那么 ldpi、mdpi、hdpi、xxhdpi、xxxhdpi 中的 56dp 也是如此 - 正如定义所说,它是与密度无关的像素。
当您进行设计时,您想知道一件事:
一些快速答案:通常是 1x、2x,极少数情况下是 3x
Android 定义了以下密度:
有一些罕见的情况介于两者之间,例如 tvdpi,但在 99% 的情况下,您可以简单地忽略它们。
当设计师说 1x 时,他们通常指的是mdpi,2x(或视网膜)指的是xhdpi,3x 设计是在xxhdpi中完成的。
一旦了解了基线,您就知道如何将设计文档中的像素值转换为dip (与密度无关的像素)。
公式非常简单,但如果您怀疑自己,请随时尝试其中一种在线转换器工具:
公式如下:dp = px / (dpi / 160)其中dpi是当前屏幕密度,px是基本 (1x) 密度中的值。
或者反过来。
另外,请记住阅读Android 开发者页面的最佳实践!
如果您最终仍然在尺寸文件中使用不推荐的 px,请查看此答案以了解如何为不同的屏幕创建不同的值文件夹。
| 归档时间: |
|
| 查看次数: |
9262 次 |
| 最近记录: |