Android Studio 4.2及以上版本无法正确导入PNG/JPG图片求助
Android Studio 4.2+ 导入高分辨率PNG生成多dpi资源问题解决
该问题并非操作失误导致,是Android Studio 4.2及后续版本的默认配置调整导致的:新版本默认开启了矢量资源优先的导入逻辑,位图导入时如果触发矢量解析流程就会被转换为灰色占位矩形,同时旧版本默认自动生成多dpi适配资源的功能被默认关闭。
单次导入快速适配方案
- 右键点击项目内的
res目录,依次选择New->Image Asset - 在弹出窗口的
Icon Type下拉栏中,根据你的资源用途选择对应类型,普通位图资源直接选择Import Drawable - 在
Source Asset模块选中本地原始832×456 PNG文件,Density基准密度选择xxxhdpi,勾选Generate alternative densities选项 - 确认输出路径为drawable相关目录后点击
Finish,即可自动生成ldpi到xxxhdpi全档位的适配资源,不会出现灰色矩形问题
恢复旧版本默认导入逻辑
如果需要恢复4.2版本之前拖入图片自动生成多dpi资源的逻辑,可按以下步骤调整配置:
打开Android Studio全局设置,依次进入
Build, Execution, Deployment->Build Tools->Android Build,取消勾选Prefer vector assets for bitmap imports选项,重启Android Studio后即可生效。
更简便的批量适配方案
无需自行编写Python脚本生成资源,可直接使用以下两种原生方案:
- 用Android Studio默认预装的
Batch Drawable Import插件,可批量选中多张高分辨率PNG,指定基准dpi后一键生成全档位适配资源,操作效率更高 - 若应用的
minSdkVersion>= 19,可直接将所有xxxhdpi分辨率的资源放入res/drawable-nodpi目录,系统运行时会自动适配不同分辨率屏幕,不会出现拉伸模糊问题,无需提前生成多套资源
内容的提问来源于stack exchange,提问作者Maxime Michel
相关产品推荐
相关产品推荐

