Layout(drawable)文件太多怎么办

看着办呗

有时候,写个项目可能layout文件太多,又或是drawable里面文件太多,想分文件夹放置,这样项目清晰些。

但是怎么做呢??当然是用gradle啦

哎。。网上的东西看得累啊

讲一个问题要具体化才能帮助理解

举个例子:

需求:我现在layout文件太多了,想把很多layout文件分开放,一个文件夹中的东西太多了

先在这个module下根目录建立个文件夹叫“suibianqimingqi”(随便起名字)

新建文件夹

在module下的build.gradle文件下添加如下代码

gradle代码
android {
    sourceSets{
        main{       
            res.srcDirs = [     //这是个方括号
                'src/main/res', //默认只有这一个路径
                'suibianqimingzi'   //这个就是告诉gradle在编译的时候到这个文件夹找资源文件
                ]
        }
    }
}

或者你可以这么写

android {
    sourceSets{
        main{
            res.srcDirs += ['suibianqimingzi']
            //res.srcDirs += "suibianqimingzi"  //一个路径就可以忽略掉方括号,双引号和单引号也无所谓
        }
    }
}

同步之后,然后你会发现你的“随便起名字”文件夹图标变了

随便起名字
  • 然后在“suibianqimingzi”这个文件夹下新建一个文件夹名为“layout”
    image

这样suibianqimingzi/layout 这个文件夹下的layout文件就能正确的使用了


image
  • 或者在“suibianqimingzi”这个文件夹下新建一个文件夹名为“drawable”

这样suibianqimingzi/drawable文件夹下的图片就能正确的使用了

  • 或者values,color。。。。。。文件夹都一样

让我们来分析下上面这个例子:

通过上面的例子,我们可以看出:

  1. 这个代码实际上是添加了一个目录作为各种资源文件夹的总目录
res.srcDirs += ['suibianqimingzi']      //这个目录名字可以随便取,只要不是特殊符号或者中文就行

++suibianqimingzi++ 文件夹下放置的“layout”子文件夹,“drawable”子文件夹,“mipmap”子文件夹等都可以被正常识别(注意:这个子文件夹的名字已经被规定好了,不能随意更改)


  1. 指定资源目录的位置可以随便放

只要在这个module的根目录下,放哪都无所谓

res.srcDirs += ['src/main/suibian'] //目录放哪都行

  1. 指定资源目录下的子目录名字不能随便取

放图片的文件夹必须叫 “src/main/suibian/drawable”
(或者src/main/suibian/mipmap也行。。。或者src/main/suibian/drawable-hdpi也行。。。。或者。。。。妈的总之文件夹的命名规则和原来一样)


  1. 在andorid视图下文件还是混在一起,其实并没什么卵用


    image

当然通过这个例子,你可以知道用这种方法不但能够配置资源文件

  • 可以配置java文件 :
java.srcDirs =['xxxx','yyyy','zzzz']
  • 可以配置assets文件
assets.srcDirs =['xxxx','yyyy','zzzz']
  • 可以配置manifest文件
manifest.srcFile = “我是傻逼.xml”

目前我只知道这么多了

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容