android中不同密度的资源大小

发布于 2024-10-17 07:42:48 字数 163 浏览 3 评论 0原文

我已经为 Android 中的 mdpi 手机制作了图像。 我想为 hdpi 和 ldpi 屏幕调整这些图像的大小。 尺寸的换算系数是多少?我听说我们将 mdpi 图像的高度和宽度乘以 1.5 将其转换为 hdpi 屏幕。 mdpi 到 hpdi 和 mdpi 到 ldpi 的准确转换系数是多少? 先感谢您。

i have made images for an mdpi phone in android.
i want to resize those images for hdpi and ldpi screens.
what is the conversion factor for the dimesions? i have heard that we multiply the height and width of the mdpi image by 1.5 to convert it to a hdpi screen.
what is the accurate conversion factor- for both mdpi to hpdi and mdpi to ldpi?
thank you in advance.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

注定孤独终老 2024-10-24 07:42:48

来自 Android 开发人员,ldpi 为 0.75,mdpi 为 1.0,hdpi 为 1.5 。请注意,如果您以 dp(与密度无关的像素)为单位指定测量值,Android 将为您处理缩放。

如果目标达到,它会缩放 1.5 倍
密度为高密度(160->240
虚拟 dpi),或 0.75 倍(如果
目标密度是低密度(160→
120 虚拟 dpi)。

您还可以在编码中通过检索电流密度并将它们相乘来缩放它。

float scale = getContext().getResources().getDisplayMetrics().density; // retrieve current density

newImageWidth = currentImageWidth * scale;

这是一本关于密度的好读物

From the Android developer, 0.75 for ldpi, 1.0 for mdpi and 1.5 for hdpi. Note that if you specified the measurements in dp ( density-independent pixels ), Android will take care of the scaling for you.

It scales 1.5 times if the target
density is high density (160->240
virtual dpi), or 0.75 times if the
target density is low density (160 ->
120 virtual dpi).

You could also scale it in the coding, by retrieving the current density and multiply them.

float scale = getContext().getResources().getDisplayMetrics().density; // retrieve current density

newImageWidth = currentImageWidth * scale;

This is a good read regarding density.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文