研究android,现在我有一些图像可以放入可绘制的目录(hdpi/ldpi/mdpi/xhdpi)。我读了很多,但我还是不明白。每个目录的图像应该是哪个大小?
9 回答
希望这会有所帮助...
mdpi 是参考密度——也就是说,mdpi 显示器上的 1 px 等于 1 dip。资产缩放比例为:
ldpi | mdpi | hdpi | xhdpi | xxhdpi | xxxhdpi
0.75 | 1 | 1.5 | 2 | 3 | 4
尽管除非您是专门为 Google TV 或最初的 Nexus 7 开发,否则您实际上不需要担心 tvdpi——但即使是 Google 也建议简单地使用 hdpi 资产。您可能也不需要担心 xxhdpi(尽管它永远不会受到伤害,并且至少应该在 xxhdpi 处提供启动器图标),并且 xxxhdpi 现在只是源代码中的一个常量(没有设备使用它,也没有我希望有一段时间,如果有的话),所以忽略也是安全的。
这意味着如果您正在制作 48dip 图像并计划支持最高 xhdpi 分辨率,您应该从 96px 图像开始(如果您想要 xxhdpi 的原生资源,则为 144px)并为密度制作以下图像:
ldpi | mdpi | hdpi | xhdpi | xxhdpi | xxxhdpi
36 x 36 | 48 x 48 | 72 x 72 | 96 x 96 | 144 x 144 | 192 x 192
并且这些应该在任何设备上以大致相同的大小显示,前提是您已将它们放置在特定于密度的文件夹中(例如 drawable-xhdpi、drawable-hdpi 等)
作为参考,这些像素密度为:
ldpi | mdpi | hdpi | xhdpi | xxhdpi | xxxhdpi
120 | 160 | 240 | 320 | 480 | 640
我已经在这里发布了完整的解释
基本上,设计图像的一般准则是:
ldpi is 0.75x dimensions of mdpi
hdpi is 1.5x dimensions of mdpi
xhdpi is 2x dimensinons of mdpi
通常,我为 320x480 屏幕设计 mdpi 图像,然后按照上述规则将尺寸相乘以获得其他分辨率的图像。
请参阅完整说明以获得更详细的答案。
请参阅图片以供参考:-(来源:- Android Studio -Image Assets 选项和Android Office 站点)
平板电脑支持 tvdpi,并且该比例因子是中等 dpi 尺寸的 1.33 倍
ldpi | mdpi | tvdpi | hdpi | xhdpi | xxhdpi | xxxhdpi
0.75 | 1 | 1.33 | 1.5 | 2 | 3 | 4
这意味着如果您为 xxxhdpi 设备生成 400x400 图像,您应该为 xxhdpi 生成 300x300、xhdpi 为 200x200、tvdpi 为 133x133、hdpi 为 150x150、mdpi 为 100x100、ldpi 设备为 75x75 的相同资源
低 dpi 是中 dpi 的 0.75 倍
高 dpi 是中 dpi 的 1.5 倍
超高 dpi 是中等 dpi 的 2 倍
将所有图像制作成基于矢量的格式是一个很好的做法,这样您就可以使用Illustrator等矢量设计软件轻松调整它们的大小。
从Octoer 2020 开始, Launcher、ActionBar/Tab 和 Notification图标的尺寸为:
一个非常好的生成启动器图标的在线工具:https ://romannurik.github.io/AndroidAssetStudio/icons-launcher.html
您可以在 android studio 中使用 Android Asset,并且 android Asset 会为您提供这种尺寸的图像作为可绘制对象,应用程序将自动使用基于设备屏幕或模拟的尺寸