如果我们的 .png 可绘制图像使用恒定的 DP 大小,那么我们是否为每个屏幕尺寸提供不同的 .png 有关系吗?

If our .png drawable images use a constant DP size, does it matter if we supply differnt .pngs for each screen size?

基本上是标题。在我的布局中,我的图像使用 200dp x 200dp 的恒定大小。那么这是否意味着我不应该费心包括 drawable-hdpi、drawable-xhdpi 等,只要我使用一个 200 像素 x 200 像素的图像?

简单的回答:不。 当所有分辨率只有一张图片时,最好的方法是获得更好的分辨率 png 并将其放在 drawable-xhdpi 中,甚至更多。这样,您的图片就会得到很好的显示。

200px x 200px 与 200dp * 200dp 不同

阅读:https://www.quora.com/What-is-the-difference-between-px-dp-dip-and-sp-in-Android

我的意思是,你的图像不可能在每个屏幕上都是 200dp * 200dp。

由于 dp 的大小在每个屏幕上都会发生变化,对于某些屏幕 [仅 160 dpi 屏幕] 200dp * 200dp 是 200px * 200px,但在更高 dpi 的屏幕上情况并非如此,这就是为什么如果您只提供200px x 200px 的图像在 160dpi phone 屏幕上看起来很完美,但在更高的 dpi 下它看起来会很糟糕(因为它看起来会被拉伸。)因为 dpi 越高,dp 的像素越多。

这里有一个像素到 DP 的计算器,你可以自己看看。

https://pixplicity.com/dp-px-converter

也就是说,如果您只提供一张 xxxhdpi 图像,它应该在每个屏幕上看起来都很好,但加载该图像需要更多内存,因为它自然具​​有更高的分辨率。

因此,如果您在 mdpi 屏幕上加载 xxxhdpi,它看起来会比图像本身更糟糕,因为 phone 的分辨率不支持它,但它会保持该屏幕可能的最高质量。

这就是为什么在很多情况下通常最好有很多图像。

下面的示例说明了不同屏幕上 200DP 的像素,如您所见,200DP 可以从 150 像素到 800 像素。

这就是为什么您建议使用恒定 DP 大小的图像是 impossible,除非每个 dpi 都有图像。