我有一个背景,我需要适合所有屏幕尺寸。对于drawable,我有三个文件夹,hdpi
,ldpi
和mdpi
,但在模拟器中,没有任何参考文献hdpi
是什么以及{{1} }和mdpi
是。
答案 0 :(得分:137)
您应该阅读Supporting multiple screens。您必须在模拟器上定义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).
答案 1 :(得分:75)
更新时间:30.07.2014
如果您使用的是Android Studio,请确保您拥有至少144x144的资源,而不是使用“ FILE-NEW-IMAGE ASSET ”。 Android Studio会为您生成适当的图像文件到所有文件夹:)
作为documentation says,按如下方式调整位图:
几乎每个应用程序都应该有不同的可绘制资源用于不同的屏幕密度,因为几乎每个应用程序都有一个启动器图标,并且该图标应该在所有屏幕密度上看起来都很好。同样,如果在应用程序中包含其他位图drawable(例如应用程序中的菜单图标或其他图形),则应提供替代版本或每个版本,以适应不同的密度。
注意:您只需要为位图文件(.png,.jpg或.gif)和Nine-Path文件(.9.png)提供特定于密度的drawable。如果使用XML文件来定义形状,颜色或其他可绘制资源,则应将一个副本放在默认的可绘制目录中(drawable /)。
要为不同的密度创建替代位图可绘制,您应遵循四个广义密度之间的3:4:6:8缩放比例。例如,如果你有一个位图可绘制的中等密度屏幕的48x48像素(启动器图标的大小),所有不同的大小应该是:
低密度(LDPI)36x36
中密度(MDPI)48x48
72x72高密度(HDPI)
96x96(超高密度(XHDPI)
)144x144用于额外的高密度(XXHDPI)
192x192额外额外高密度(XXXHDPI)
答案 2 :(得分:9)
就确定性决议而言,文档非常粗略。经过一些研究,这是我得到的解决方案:Android splash screen image sizes to fit all devices
它基本上是指向闪屏,但它完全适用于应该占据全屏的图像。
答案 3 :(得分:8)