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多款手机中启动图标与通知栏图标中显示样式的适配问题