将Android自定义drawable文件夹转换为子文件夹

7

子文件夹 我指的不是drawable-hdpi、 drawable-mdpi、drawable-ldpi等文件夹,而是@drawable\myfolder\img.png

我有点担心能否像我们用包来组织Java文件那样自定义drawable文件夹的结构。我的项目中使用了大量图片,每次复制活动布局xml时都要在drawable中搜索图片,感觉很烦人!Android有这样的功能或解决方法吗?


你先尝试过搜索了吗? - Tomasz Dzieniak
是的!我已经浏览了那个问题! 我得到了一些相互矛盾的答案,有些说不行,有些则需要插件。 我想要一些 Android 支持的核心方式,以及一些肮脏的路径。 - A_rmas
3个回答

3
我认为,目前存在这种方法。我也有许多可绘制和布局,所以尝试从布局开始,然后添加可绘制和菜单。我建议查看Android布局文件夹可以包含子文件夹吗?http://alexzh.com/tutorials/how-to-store-layouts-in-different-folders-in-android-project/
是的,我现在有新的资源在新的子文件夹中。这需要时间来管理(创建res文件夹,编辑build.gradle),但文件夹树变得更加整洁。有时AS在编译期间无法找到资源。在这种情况下,我必须创建新文件夹并编辑build.gradle。可能几周后一切都会完成。
更新
它一直有效,直到Android Studio升级到3.2(和3.2.1)。当前,如果您将任何可绘制的、布局或菜单资源移动到另一个文件夹中(并像上面的文章中所写的那样将此文件夹添加到build.gradle中),您不能正常使用它。在3.2之前,我们只需按Build > Rebuild Project即可引用该资源。现在他们破坏了这种行为,您应该按File > Invalidate caches / Restart... > Just Restart(或关闭和打开AS)才能像往常一样访问此可绘制对象。如果您不想重启AS,可以使用该资源,但手动编写路径,如@drawable/reset_password,AS不会在键入时提示并且不会在设计选项卡中显示它。
如果您使用Kotlin Android扩展并引用像send_button这样的id(无需findViewById()),则会出现很多错误,难以想象。如果更改资源,则布局中的内容通常不会更改,直到重新构建项目。这是因为Kotlin缓存资源。我经常忘记这一点而浪费时间。

2
据我所知,不行。 在 G+ 上有一篇有趣的帖子,介绍了一个可用于布局目录的解决方法,我猜也可以用于可绘制目录。
所有信息都在这里

我刚看了你给的最后一个链接 :D - A_rmas
@ArmasCyndromic 但是你是否注意到这个插件只在Android Studio中以不同的方式显示给你,它实际上并没有改变任何文件位置。 - Budius
当然,我正在寻找更多的细节。 - A_rmas

-1

Android不支持在其预定义目录中创建子文件夹,唯一可行的方法是在res目录下创建文件夹。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接