1

如您所知,如果您将尺寸和大小放在dp中,它在所有设备中几乎相同。我说几乎是因为桶范围。例如,在具有 240dpi 的 hdpi 中,具有200dpi279dpi的设备都使用 hdpi 资源和 dimens 文件夹,并且像素大小相同:

像素 = dp * (dpi/160)

在此处输入图像描述

例如,一个300dp大小的对象在第一个设备 (200dpi) 中将是 (dp/dpi=inch) 300/200 = 1.5 英寸,在另一个设备中它将是 300/279=1.07 英寸。(279dpi 设备),如您所见,范围 hdpi 的高端和高端与您的 UI 之间的差异太大,而不仅仅是英寸相同。

好的,我发现解决此问题的最佳解决方案是将存储桶划分为更具体的 sw 并更改dimens.xml每个存储桶范围的 dp 大小。但我不知道如何划分桶和第二如何为他们创造价值!

问题是什么是正确的文件夹范围?实现这一目标的划分 sw 大小的最佳实践是什么。(sw160、sw320、sw480 还是什么?)以及如何为尺寸增加价值?

更新

一些朋友说为什么你不会使用 in 而不是 dp ,这是我的回答:

  1. Android 使用相同的公式(屏幕分辨率 / dpi = 英寸)获得英寸,因此问题是相同的,并且并非在所有设备中都是准确的。
  2. Android告诉不推荐使用英寸和毫米和厘米。
4

1 回答 1

0

我也有类似的要求,我在此链接中提出了所有设备中水平卡/项目的数量相等。Play 商店应用程序在不同 dpi 的所有设备中以相同的方式显示。

于 2017-03-09T05:54:46.053 回答