Android 屏幕适配攻略(六)设置通知样图标与启动图标适配


1 Android中资源文件中的图片加载分析

Android中对屏幕的像素适配处理分类

屏幕密度

对应的标签

对应的像素

120dip

ldpi

1dp= 0.75px

160dip

mdpi

1dp= 1px

240dip

hdpi

1dp= 1.5px

320dip

xhdpi

1dp= 2px

480dip

xxhdpi

1dp= 3px

640dip

xxxhdpi

1dp= 4px

通过计算,假如计算出来的屏幕密度为 150,安卓系统会进行判断,150 在 120dip 与 160dip 之间,那么系统会使用 160dip为 基数来进行尺寸的计算 《在Android 屏幕适配攻略(一)到 (五)中已详细分析》

那么在对应的加载资源目录(res)下的图片时,我们已知对应的存放图片的目录可以有

在drawable目录下

屏幕密度

对应的标签

图片资源目录

120dip

ldpi

drawable-ldpi

160dip

mdpi

drawable或者drawable-mdpi

240dip

hdpi

drawable-hdpi

320dip

xhdpi

drawable-xhdpi

480dip

xxhdpi

drawable-xxhdpi

640dip

xxxhdpi

drawable-xxxhdpi

或者是在mipmap目录下

屏幕密度

对应的标签

图片资源目录

120dip

ldpi

mipmap-ldpi

160dip

mdpi

mipmap或者mipmap-mdpi

240dip

hdpi

mipmap-hdpi

320dip

xhdpi

mipmap-xhdpi

480dip

xxhdpi

mipmap-xxhdpi

640dip

xxxhdpi

mipmap-xxxhdpi

Android 在加载资源文件中的图片时,会先去加载对应屏幕密度下的图片,例如是320的屏幕,就会优先去加载xhdpi目录下的图片,如果当前目录中没有,那么就会去查找其他目录中同名资源图片,如果没有则编辑报错®


2 通知栏加载的图标的适配大小

在开发中,时常会遇到启动图标不知应当设置为多大像素的为合适,而通知 加载的图标时常显示不全或者过于太小,总之影响效率,所以结合上述的适配分析,与查阅谷歌官方文档中的建议,得出以下结论

屏幕密度

对应的图片大小

图片资源目录

120dip

36px * 36px

mipmap-ldpi

160dip(基准)

48px * 48px

mipmap或者mipmap-mdpi

240dip(1.5倍)

72px * 72px

mipmap-hdpi

320dip (2倍)

96px * 96px

mipmap-xhdpi

480dip (3倍)

144px * 144px

mipmap-xxhdpi

640dip (4倍)

192px * 192px

mipmap-xxxhdpi


按照上述的比例设置下来,基本上解决了目前所测试的近20多款手机中启动图标与通知栏图标中显示样式的适配问题