如何在Android Studio中访问res目录下新建draw2文件夹内的图片
在Android Studio中访问res/draw2文件夹内的图片
嘿,我来帮你搞定这个问题!首先得明确一点:Android Studio默认只会识别res目录下的标准资源文件夹(比如drawable、mipmap、layout这些),所以你自定义的draw2文件夹需要做一些配置,才能让系统把它当成资源目录来处理,这样就能像访问普通drawable资源一样访问里面的图片了。
下面分步骤来操作:
1. 配置build.gradle让系统识别draw2目录
打开你app模块下的build.gradle文件(注意是Module级别的,不是Project级别的),在android代码块里添加sourceSets配置,把draw2目录加入资源目录列表:
android { // 其他已有配置... sourceSets { main { // 把draw2目录添加到资源目录中 res.srcDirs += 'src/main/res/draw2' } } }
配置完成后,点击右上角的"Sync Now"按钮同步项目,这样Android Studio就会把draw2里的图片当成普通drawable资源来编译,生成对应的资源ID。
2. 访问文件夹内的图片
同步完成后,你就可以像访问drawable目录下的图片一样,通过资源ID来调用了。举个例子:
假设你在draw2里放了一张名为custom_icon.png的图片,在代码中给ImageView设置图片的方式如下:
Java代码:
ImageView myImageView = findViewById(R.id.my_image_view); myImageView.setImageResource(R.drawable.custom_icon);
Kotlin代码:
val myImageView = findViewById<ImageView>(R.id.my_image_view) myImageView.setImageResource(R.drawable.custom_icon)
额外注意事项
- 命名规则:图片文件名必须符合Android资源命名规范,只能用小写字母、数字、下划线和点,不能包含大写字母、空格或特殊字符,否则会编译报错。
- 密度适配:如果需要适配不同屏幕密度,你可以在
draw2下创建子目录(比如draw2/mdpi、draw2/hdpi),把对应密度的图片放进去,系统会自动根据设备密度选择合适的图片,和drawable目录的机制完全一样。 - 标记资源目录(可选):如果同步后Android Studio还是没识别
draw2,可以右键点击draw2文件夹 → 选择Mark Directory as→Resources Root,手动标记它为资源根目录。
内容的提问来源于stack exchange,提问作者Alber Levi
相关产品推荐
相关产品推荐

