我有一个36x36,48x48和72x72像素比例的菜单项和图标。现在,如何在特定情况下渲染每个图标。是否可以在xml文件中定义它?
答案 0 :(得分:5)
我猜你已经看到了这个有用的链接:
http://developer.android.com/guide/practices/ui_guidelines/icon_design.html
您需要做的就是在不同文件夹下保存不同的变体,但名称相同:
res/drawable-ldpi (36x36)
res/drawable-mdpi (48x48)
res/drawable-hdpi (72x72)
您可以通过公共资源名称在代码中引用它们,但使用的实际版本会根据您使用的设备的屏幕大小进行调整。
答案 1 :(得分:0)
请注意,http://developer.android.com/guide/practices/ui_guidelines/icon_design_menu.html#size9提供了不同的图标大小:
Menu icon dimensions for high-density (hdpi) screens:
Full Asset: 72 x 72 px
Icon: 48 x 48 px
Square Icon: 44 x 44 px
Menu icon dimensions for medium-density (mdpi) screens:
Full Asset: 48 x 48 px
Icon: 32 x 32 px
Square Icon: 30 x 30 px
Menu icon dimensions for low-density (ldpi) screens:
Full Asset: 36 x 36 px
Icon: 24 x 24 px
Square Icon: 22 x 22 px
如果在hdpi屏幕上使用超过48x48的图标,则用户将看不到菜单项标题(或查看截断的标题,这更糟糕)。