layout: post
title: ‘Android Drawable加载匹配’
date: 2021-01-11
author: qzhuorui
color: rgb(154,133,255)
tags: Android
Android各个drawable文件夹的匹配规则
Android Drawable加载匹配
为了适配不同分辨率的屏幕,对于同一张图,我们会在drawable,drawable-mdpi,drawable-xhdpi等文件夹下都放上 同名 ,不同大小 的图。
但如果没有放全呢?例如分辨率是xxhdpi,但是我们这个文件夹下没放图,这时次手机应该如何加载呢?
加载顺序:
- xxhdpi文件夹下有此图,和手机分配率匹配,直接使用,图片不会被缩放
- xxhdpi文件夹下无此图,优先去 更高密度 的文件夹下找,例如此时回去xxxhdpi文件夹下找同名的图
- 如果一直找到最高的分辨率文件夹下,还是没有。此时去 nodpi文件夹 下找图
- nodpi也没有的话,就会去 更低密度 文件夹下找,密度依次减小
- nodpi是和密度无关的文件夹,系统不会对其图自动缩放,只展示原图
- 注意加载顺序。只有匹配密度文件夹和更高密度文件夹都找不到,才会去这次找。所以放到nodpi文件夹中的图,不建议在放到其他文件夹中
注意:
- 如果在 低密度文件夹 下,找到了。系统会认为这张图是专门为低分辨率的设备设计的。如果直接在高分辨率设备上使用,可能会出现像素过低的情况,于是 系统会自动放大此图
- 同理在 高密度文件夹 下,找到了。 系统会自动缩小此图