118

我有一个需要适合所有屏幕尺寸的背景。我有三个文件夹,hdpildpi用于mdpi可绘制对象,但在模拟器中没有任何关于分辨率 hdpi是什么以及什么是mdpildpi是的参考。

4

4 回答 4

141

您应该阅读支持多个屏幕。您必须在模拟器上定义 dpi。240 是 hdpi,160 是 mdpi,低于通常是 ldpi。

摘自上面的 Android 开发者指南链接:

320dp: a typical phone screen (240x320 ldpi, 320x480 mdpi, 480x800 hdpi, etc).  
480dp: a tweener tablet like the Streak (480x800 mdpi).  
600dp: a 7” tablet (600x1024 mdpi).  
720dp: a 10” tablet (720x1280 mdpi, 800x1280 mdpi, etc).
于 2011-05-29T08:23:15.670 回答
78

更新:2014 年 7 月 30 日

如果您使用 Android Studio,请确保您拥有至少 144x144 的资源,然后使用“ FILE-NEW-IMAGE ASSET ”。Android Studio 将为您制作正确的图像文件到所有文件夹:)


文档所述,按如下方式调整位图:

几乎每个应用程序都应该为不同的屏幕密度提供替代的可绘制资源,因为几乎每个应用程序都有一个启动器图标,并且该图标在所有屏幕密度上都应该看起来不错。同样,如果您在应用程序中包含其他位图可绘制对象(例如应用程序中的菜单图标或其他图形),您应该为不同的密度提供替代版本或每个版本。

注意:您只需为位图文件(.png、.jpg 或 .gif)和九路径文件 (.9.png) 提供特定于密度的可绘制对象。如果您使用 XML 文件来定义形状、颜色或其他可绘制资源,则应在默认可绘制目录 (drawable/) 中放置一份副本。

要为不同密度创建替代位图可绘制对象,您应该遵循四个通用密度之间的 3:4:6:8 缩放比例。例如,如果您有一个 48x48 像素的用于中等密度屏幕(启动器图标的大小)的可绘制位图,则所有不同的大小应该是:

36x36 用于低密度 (LDPI)

48x48 用于中等密度 (MDPI)

72x72 用于高密度 (HDPI)

96x96 用于超高密度 (XHDPI)

144x144 用于超高密度 (XXHDPI)

192x192 用于超高密度 (XXXHDPI)

于 2013-09-08T09:04:18.327 回答
9

就最终解决方案而言,文档非常粗略。经过一番研究,这是我得出的解决方案:适用于所有设备的 Android 初始屏幕图像大小

它基本上被引导到启动屏幕,但它完全适用于应该占据全屏的图像。

于 2013-04-01T13:39:20.837 回答
8

看看这个很棒的转换器。http://labs.rampinteractive.co.uk/android_dp_px_calculator/

于 2013-05-13T00:30:21.650 回答