我知道有一些指南可以为 Android 中的特定区域(Tab、List 等)创建图标,以及如何根据 ldpi、mdpi、hdpi 等设置它们的大小。
关于如何缩放其他应用内图标是否有任何规则?
我在我的 mdpi 开发手机上使用了一个 10x10 像素的“小”图标,创建该图标的 ldpi、hdpi 和 xhdpi 版本的缩放规则是什么?
谢谢
戴夫
我知道有一些指南可以为 Android 中的特定区域(Tab、List 等)创建图标,以及如何根据 ldpi、mdpi、hdpi 等设置它们的大小。
关于如何缩放其他应用内图标是否有任何规则?
我在我的 mdpi 开发手机上使用了一个 10x10 像素的“小”图标,创建该图标的 ldpi、hdpi 和 xhdpi 版本的缩放规则是什么?
谢谢
戴夫
我会为每个创建单独的图像:
Res Px
ldpi 36 x 36
mdpi 48 x 48
hdpi 72 x 72
xhdpi 96 x 96
xxhdpi 144x144
xxxhdpi 192x192
然后只需将它们中的每一个放在可绘制文件夹的单独茎中。
比率为 0.75|1|1.33|1.5|2.|3.|4。(或 3:4:6:8:12:16)也就是说,对于您的 10x10px 位图,图形将是
ldpi - 10x10 * 0.75 = 7x7
mdpi - 10x10 * 1 = 10x10
tvdpi - 10x10 * 1.33 = 13x13
hdpi - 10x10 * 1.5 = 15x15
xhdpi - 10x10 * 2 = 20x20
xxhdpi - 10x10 * 3 = 30x30
xxxhdpi - 10x10 * 4 = 40x40
支持多个屏幕的像素值的通用规则基于设备屏幕密度的基线配置。密度为 160 像素的基线,mdpi 在此范围内。因此,通过计算 dpi 值,您可以将这些值放在不同的 dimens.xml 中以支持各种设备。一般公式为:
结果 = 值(dpi)* 设备密度(pi)/160(dpi)
所以首先检查你的设备密度,然后根据上面的公式计算dimens.xml的值。对于标准,我们通常假设:
对于 mdpi 密度 = 160,hdpi - 240,xhdpi - 320,ldpi - 120
与您的情况一样,如果值为 10*10,则不同屏幕的结果将是:
对于 ldpi:
结果 = 10*120/160 = 7.5 ,即 7 个像素
对于 mdpi:
结果 = 10*160/160 = 10 像素
对于 hdpi:
结果 = 10*240/160 = 15 像素
对于 xhdpi:
结果 = 10*320/160 = 20 像素
你也可以参考这个http://developer.android.com/guide/practices/screens_support.html 和http://developer.android.com/training/multiscreen/screendensities.html
根据 Android-Iconography 指南,图标应遵循 2:3:4:6 的比例,分别用于不同的屏幕密度,中、高、x-high 和 xx-high。
您还可以查看 Android 设计指南以了解图标。http://developer.android.com/design/style/iconography.html