Android的drawable资源目录下能包含子目录吗?

在android SDK文件中,所有的示例使用@drawable/my_image这个xml语法直接寻找存储在我的工程中的res/drawable目录下的图片。
我想知道在drawable资源目录下再创建一个子目录是否是确实不能用。
例如,我的布局目录是这样的:

res/drawable
-- sandwiches
  -- tunaOnRye.png
  -- hamAndSwiss.png
-- drinks
  -- coldOne.png
  -- hotTea.png

我能引用tuna salad sandwich这个游戏的图片作为@drawable/sandwiches/tunaOnRye吗?
或者我必须在drawable资源目录中保持水平的层级。

0
suannai0314
鹳狸媛 请注意,在res目录中是不允许有大写字母的。
6 年多之前 回复

5个回答

不可以的,资源机制在drawable资源目录中不支持子文件夹,所以,你需要保持这个水平层级。
你显示出的目录的布局将导致没有可用的图像。
根据我的经验,在res/drawable文件夹里边的任何项目都有一个子文件夹,这将引起资源编译器不可用--组织R.java文件正确的生成。

0
niangzhi
niangzhi 在Android2.2中,这个不会引起编译器的错误,但是当生成R类的时候,任何子目录都会被忽略掉。这个真的很不好用,而且使得管理大的图片工程很困难。
6 年多之前 回复

我用的变通方案从本质上来说就是(android它本身看起来很适用)用下划线代替斜杠,所以你的结构看起来就像这样:

sandwich_tunaOnRye.png
sandwich_hamAndSwiss.png
drink_coldOne.png
drink_hotTea.png

这个方法需要你非常的谨慎细致命名,不要让文件本身发生名称上的混乱(如果你决定饮料和三明治真的都是食物,你就应该做一个大规模的重命名,而不是简单的把他们移动到该目录下);但是和文件夹结构相比,你的程序逻辑的复杂性不会遭受太严重的改变。
这种情况的确很糟糕。Android就是奇妙的和可怕的设计方案的大杂烩。我们现在只能希望后面到期的部分能够得到淘汰。

1

使用assets floder
示例代码

InputStream is = null;
try {
    is = this.getResources().getAssets().open("test/sample.png");
} catch (IOException e) {
    ;
}

image = BitmapFactory.decodeStream(is);
0

实践是检验真理的唯一标准 ,试一下不就知道

0

可以创建文件夹,但是里面的资源是引用不到的

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Android Studio 在drawable目录下新建文件夹
做Android开发这么长时间了,我竟然刚刚知道这个问题,有点羞愧。。Android适配很重要,我们一般都会在drawable目录下放许多不同分辨率的图片来适应不同分辨率的手机,然而新建的默认studio 工程只有drawable 一个文件夹,我以前都是自己手动输入drawable-xhdpi ….等方式建立的,其实正确的步骤是:1 res 上面右击 — new — Android resou
关于安卓工程目录的介绍(src目录,res目录下drawable、mipmap、values等)
主要介绍安卓的工程目录,写给刚接触安卓的童鞋进行交流,大牛勿喷。。 src:源文件; gen:开发工具自动生成的文件,不允许修改,R.java; libs:第三发方jar包,如android-support-v4.jar; assets:资产目录,音频文件,视频文件,把文件原封不动的打包到apk文件中; AndroidManifest.xml:Android软件的启动文件; r
由于drawable目录下新建文件夹导致的AndroidStudio编译失败解决思路!
在AndroidStudio中,由于默认的图片管理只有drawable文件夹,如果不分类加以管理,在图片层次多的情况下,文件显得杂乱,于是尝试在drawable中新建文件夹来实现文件分层管理,然而在新建文件后,发现子目录下并没有显示新建的文件夹,以为没有成功创建,重新尝试后,结果一样。 原因,drawable目录不支持子目录,这也导致了后面的编译出现问题。 解决办法:通过文件系统找到 工程所在
android 应用程序的目录结构
android 应用程序的目录结构 1.src目录 src目录中存放的是该项目的源代码,其内部结构会根据用户所声明的包自动组织,该目录的组织方式为src/aaa/bbb/HelloWord.java,其中aaa/bbb为包名软件开发人员在项目开发过程中,大部分时间是对该目录下的源代码文件进行编写。 ……
Android 为什么最佳放置图片资源的文件夹就是drawable-xxhdpi?
Android drawable微技巧,你所不知道的drawable的那些细节
Selector在drawable和color目录下使用的规范
android.view.InflateException: Binary XML file line #2: Error inflating class <unknown>
assets目录与res/raw、res/drawable目录的区别
assets目录与res下的raw、drawable目录一样,也可用来存放资源文件,但它们三者有区别,对比总结如下表:       assets res/raw res/drawable 获取资源方式:   文件路径+文件名       R.raw.xxx        R.drawable.xxx    是否被压缩: NO NO Y
Android应用中res/drawable文件夹下定义的xml文件内容详解(一)
drawable文件夹下定义的xml有哪些作用? 首先,看看有哪些标签可以使用,一共有10类,我使用 Eclipse:Version: Luna Service Release 1a (4.4.1)。在xml中Ctrl+/可以看到以下内容。 从最常用和最熟悉的说起: 1、shape标签: 摘抄:http://blog.csdn.net/ekeuy/article/details/
android 通过图片名称获取 drawable 目录下的图片
android 通过图片名称获取 drawable 目录下的图片 ~~~~~~~~~~~~~~~~~
android如何获取res文件夹下drawable文件夹下的图片资源文件转成一个BitMap对象
网上有很多方法: bitmap bm = BitmapFactory.decodeResource(getResources(),R.drawable.img);
drawable与mipmap的区别(android资源文件放置位置)
今天在网上浏览博客,看到这一个问题,我们的图片资源到底放在drawable还是mipmap目录中,网上的争议很大, 今天打算就我的观点说一下这个问题,如果我的回答让大神们有所质疑,希望多多提点。 首先我们应该知道他们的意义: 1.Drawable Android 把可绘制的对象抽象为Drawable,不同的图形图像代表着不同的darwable类型, 通常我们在代码
获取Drawable目录下的资源
获取Drawable目录下的资源 /** * 通过文件名获取Drawable目录下的图片资源 * * @param context 上下文对象 * @param name 文件名 * @return bitmap */ public static Bitmap getDrableImage(Context context, String name) { Application...
Android中如何给layout资源文件分类 在layout下创建子文件夹
http://blog.csdn.net/u010479969/article/details/50262731 android 工程结构中,layout 目录下可以建子目录。 1、在layout文件夹下建子目录 2、app/build.gradle 文件中  android{} 中加配置。 如我在layout目录下要建子文件夹 main_activity 那么 第一,在re
根据手机屏幕的密度获取drawable对应目录下的图片
转自:https://blog.csdn.net/guolin_blog/article/details/50727753根据如下方式获取到屏幕的dpi值:float xdpi = getResources().getDisplayMetrics().xdpi; float ydpi = getResources().getDisplayMetrics().ydpi;其中xdpi代表屏幕宽度的dpi
获取res/drawable目录下的图片Uri
.
安卓开发之Android Studio在drawable目录下添加矢量图vector XML文件
安卓开发之Android Studio在drawable目录下添加矢量图vector XML文件——Random——CSDN博客
Android资源文件夹命名规则
几乎所有的应用都要提另外的特殊资源来适配特殊配置的设备。例如:你必须提供不同尺寸的图片资源以适配不同屏幕密度的设备;你需要提供多个string资源文件以支持国际化。Android会根据当前设备的配置来加载适当的资源。 一. Android资源文件夹命名规则 android资源文件夹默认的命名见Providing Resources的table1 创建指定的具体资源文件: 在
图片放在drawable文件夹和mipmap文件夹下的区别
前言: 今天发生一个奇怪的事情,我从网上下了两张美女的图片(那种衣服加载不出来的),想放在自己写的demo上当背景,demo整体布局是一个activity+viewpager,viewpager里是fragment,我把图片设置成fragment背景图片,没想到,衣服加载不出来也就算了,身子也加载缓慢了,我这小脾气怎能受得了 哥,第一时间想到,这美女有毒吧!!!我擦 好了,正经的分析问题了
Android drawable&mipmap 资源检索顺序 最佳资源存放目录
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/50727753  好像有挺久时间没更新博客了,最近我为了准备下一个系列的博客,也是花了很长的时间研读源码。很遗憾的是,下一个系列的博客我可能还要再过一段时间才能写出来,那么为了不至于让大家等太久,今天就给大家更新一篇单篇的文章,讲一讲Android drawable方面的微技巧。
关于Android中图片大小、内存占用与drawable文件夹关系的研究与分析
从上一篇文章《Android屏幕适配全攻略》写完之后,经常会有朋友问我这个问题:“能不能一个App只提供一套切图适应所有的分辨率呢?”我觉得有必要写一篇文章来研究一下这个问题,所以就有了这篇文章。 研究内容 研究方法 测试环境 研究过程 结果分析 结论 另外一个难以解释的问题 研究内容 本篇内容主要探讨以下场景:同一张图片,放置在不同的drawable文件夹,在同一设备上
Android项目目录结构介绍(续)——src目录和res目录详细介绍
Android项目中,src目录是放java源代码的目录,通常我们会在该目录
适配——Drawable适配,占用内存测试
转自http://blog.csdn.net/wrg_20100512/article/details/51295317 首先我准备了一张600×960像素的png图片大小为248k,文件名为test,分别放置为不同的图片文件目录下 布局文件: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/andr
关于图片要放在哪个drawable文件夹下
出处:http://blog.csdn.net/guolin_blog/article/details/50727753  先谢谢郭霖大神的分享。 这篇文章写的是关于同一张图片在不同分辨率的drawable文件夹下(如drawable-xxhpi和drawable-xhpi)在同一个手机上会有不同的大小。即           左边的图是原文中放在drawable-xxhdpi的情况,
linux获取目录下文件 包含子目录
#!/bin/bash sum=0 function lsdir() { for i in `ls`;do   if test -d $i  ;then      #用于排除某个目录      if [[ $i = "static" ]];then          continue      fi      cd $i      lsdir      cd ..    
android res目录的子目录
res文件夹里面的多个文件夹的各自介绍(来自网上的Android开发指南中文版内容): 目录Directory 资源类型Resource Types res/anim/ XML文件,它们被编译进逐帧动画(frame by frame animation)或补间动画(tweened animation)对象 res
Java打印当前目录下的所有子目录和文件
其实这个没啥技术含量,大湿们不要操笑哦,只是做一个简单的记录,简单用了一下递归算法。   import java.io.File; /** * @author Perlin * @date 2014-6-30 */ public class PrintDirectory { public static void printDirectory(File file)...
编写一个程序,能在当前目录以及当前目录的所有子目录下查找文件名包含指定字符串的文件,并打印出完整路径
import os def search(path,name): # listdir可以列出给定的目录文件名 file_list = os.listdir(path) # 遍历目录 for x in file_list: # 判断要查找的文件名是否在目录中 if name in x: # 输出查询文件的路径...
获取指定目录(包含子目录)下所有的txt文件的个数,并打印文件名称?
如果仅仅是打印文件名称可以用以下代码;public class test3 { public static void main(String[] args) {  File f=new File("G:\\1");  int count =0;  method2(f); }public static void method2(File file){  File[] files=file.listF
安卓 总结:写在drawable文件夹中的 xml 图形资源文件
1、StateListDrawable 资源: 作用:比如按钮在“按下去”和“没按下去”时颜色的差别。 根标签:  ...   实例代码:创建资源文件  my_image.xml 引用该资源代码: <EditText ....... android:textColor= "@drawabl
Android获取drawable目录下的图片绝对路径并转为Bitmap
Uri uri =  Uri.parse(ContentResolver.SCHEME_ANDROID_RESOURCE + "://"                 + getResources().getResourcePackageName(R.drawable.图片名称) + "/"                 + getResources().getResourceTypeNa
Android 访问res目录下的资源
概述: 一个android应用会包含很多的资源文件,比如图片, 文字, 样式, 布局等等文件。 这篇博客主要记录下android中访问res目录下的资源文件。 res 目录下通常有 anim, animation, drawable, mipmap, layout, menu, raw, values 等子目录。相信这些文件目录对android开发者来说是再熟悉不过了。下面我们来总结一
关于图片放到合适的drawable文件下
drawable细节注意:系统自动去找图片资源的规律是[最合适的dpi的drawable]--&amp;gt;[更高dpi的drawable]--&amp;gt;[nodpi的drawable]--&amp;gt;[比最合适的dpi稍低的drawable依次去找];如果图片资源放的drawable位置不对,那么会导致加载一张图片的内存消耗过大,假如一张图片放到比当前设备dpi更低的drawable文件夹下,系统会认为这是...
Android中图片大小、drawable文件夹、图片大小对内存占用的影响分析
Android中图片大小、drawable文件夹、图片大小对内存占用的影响分析对于这个问题的分析,推荐一篇博客http://blog.csdn.net/zhaokaiqiang1992/article/details/49787117感谢博主进行这么详尽的分析,这篇应该是我见过最完整的分析了,本文在这篇博客的基础上进行补充。 文中的测试代码请前往github BitmapTest一 图片的加载图片
shape的使用创建步骤文件要放在drawable文件夹下如果放在layout下会报错
shape的xml资源文件要放在drawable文件夹下如果放在layout下会报错**shape的创建和使用步骤** 1.创建shape.xml文件放在drawable文件夹下,这里定义shape图形样式 <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com
res目录下的所有文件命名不能用大写字母
在进行Android开发时,要注意res目录下的:drawable,layout,values,menu下的文件命名只能是以'a'-'z'、'0'-'9'或者'_'命名,不能包含大写字母,否则会报错,大家要注意!
更新系统或者更换Eclipse后,双击Eclipse-drawable,或者在布局文件中,查看图片时,显示乱码。png 和 jpg
在Eclipse中查看图片资源显示乱码 修改方法: 1、打开电脑上随便一个图片,右击 ——打开方式——选择打开图片的应用并设置默认打开方式 2、重启Eclipse 再查看就OK了。 3、不同格式的图片,都要设置默认打开方式。比如png,JPG
多目录的Android.mk编写--遍历目录下所有C文件
在Android中编译C库时,我们需要在Android.mk文件中,为LOCAL_SRC_FILES变量指定要编译的源代码,以及为LOCAL_C_INCLUDES变量指定头文件。当项目文件越来越多时,这种手动修改很浪费时间。这时我们就需要一个自动遍历项目中所有相关文件的方法了。我从网上看了很多文章,都是使用linux下的命令脚本来遍历目录查找文件,在windows下就不好用了。费了很大功夫,才发现这篇好文章,特此转载,希望能让需要的同学节省一点寻找的时间。
drawable和mipmap 目录下图片的区别
drawable和mipmap 目录下图片的区别 android 在 API level 17 加入了 mipmap 技术,对 bitmap 图片的渲染支持 mipmap 技术,来提高渲染的速度和质量。mipmap 是一种很早就有的技术了,翻译过来就是纹理映射技术。android 中的 mipmap 技术主要为了应对图片大小缩放的处理,在android 中我们提供一个 bit...
删除目录下(包括子目录)某天的文件
#!/bin/bash DATE10=$(date -d "10 days ago" +%F) WEBPATH="/root/test/file"function rmLongerFile(){ fileInfo=$(stat $1 | grep -i 'Modify' | grep $DATE10) if [ -z "$fileInfo" ]; then
获取drawable目录下的图片绝对路径
  Uri uri = Uri.parse(ContentResolver.SCHEME_ANDROID_RESOURCE + &quot;://&quot; + r.getResourcePackageName(R.drawable.图片名称) + &quot;/&quot; + r.getResourceTypeName(R.drawable.图片名称) + &quot;/&quot; + r.getResourceEntryName(R.draw...
文章热词 设计制作学习 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 大数据技术包含机器学习吗 产品经理能培训吗