Android 如何将layout和drawable文件分文件夹存放

  • 前言
  • 分类
  • 打开文件夹
  • 修改文件夹名(可选)
  • 创建分类文件夹
  • 注册资源路径
  • 资源文件
  • 在项目中查看
  • 完事


前言

在项目的逻辑方面,我们经常分文件夹来管理模块或者是model。但是布局文件和资源文件理应也需要分类存放,不然当项目繁杂了起来就会比较难以管理,尽管你的命名写得很规范。

分类

以下操作都在macOS平台下实现的,Windows的用户只能当个大概参考

打开文件夹

android value 文件夹 android drawable文件夹_Android


首先右键我们的layout资源文件夹,选中Reveal in Finder。

就会在finder中打开该文件夹

修改文件夹名(可选)

android value 文件夹 android drawable文件夹_分类_02


将原来layout的文件夹修改成layouts的文件夹名。

创建分类文件夹

android value 文件夹 android drawable文件夹_android value 文件夹_03


在layouts文件夹中创建一个layout_app文件夹,并且在layout_app文件夹中新建一个layout文件夹,将原来的布局文件存放到这里来就可以了。

路径为res/layouts/layout_app/layout/activity_main.xml 这就是文件存放路径了。

只需要注意一件事情:

// 如果我们想要分类文件夹
// 不能只是直接在layout里面建立新文件夹来存放
// 需要在layout文件夹里新建的文件夹里再新建一个layout文件夹
// 以形成  
res/layout/xxx/layout/
// 这种路径

注册资源路径

就这样就可以了吗?当然还不行

项目还没那么智能,不知道要去这些文件夹去找布局文件

所以我们需要去注册使得项目能够清楚去哪里拿资源文件

打开app的build.gradle

android节点中添加

android value 文件夹 android drawable文件夹_Android_04

sourceSets {
        main {
            res.srcDirs =
                    [
                            'src/main/res/layouts/layout_hd_001',
                            'src/main/res/layouts/layout_app',
                            'src/main/res/layouts',
                            'src/main/res'
                    ]
        }
    }

要注意一件事情
下面这两句一定是在最后两行,不能放到前面去

'src/main/res/layouts',
'src/main/res'

然后重新编译即可。

资源文件

同理

sourceSets {
        main {
            res.srcDirs =
                    [
                            'src/main/res/drawable/drawable_hd_001',
                            'src/main/res/drawable/drawable_app',

                            'src/main/res/layouts/layout_hd_001',
                            'src/main/res/layouts/layout_app',
                            'src/main/res/layouts',
                            'src/main/res'
                    ]
        }
    }

在项目中查看

嘿嘿嘿,是不是发现左边项目文件栏看不到你的布局文件和资源文件啦

哈哈哈哈哈

我就是这里被坑了,搞了好久

android value 文件夹 android drawable文件夹_布局文件_05


要选中这个才行Project Files 就能查看了

完事