【Android Studio】分类整理res/Layouts中的布局文件(创建子目录)

好吧,这个功能需求也是因为作为一个重度强迫症患者,非常想要把layouts中的文件分类整理下。否则看到一堆Activity和Fragment等文件混在一起特别难受。更重要的原因是,如果你的工程交给别人维护,别人看到一堆布局文件压根不知道从哪里下手。又是经过一番折腾,总算把布局整理成这样了:

说到布局文件的整理,一般有两种:

1. 按照文件类型:基本上分为Activity、Fragment和views等

2. 按照页面类型:你的工程有几个大的页面,每个页面下面又有多少个子页面,可以按照这种模块的方式分类整理下。

当然我就是采用第二种方式。


说点题外话,我最开始的时候在StackOverFlow上面搜到了两种方法,一种方法是用一个plugin:


但是这种方法经过实际认证,好像在1.3版本之后的AS就不能用了。下图就是我安装的版本,看到安装了之后,左侧的导航栏中根本没有other setting的入口。


我还专门去问了这个插件的开发者,告诉他我的1.4.1版本的AS没有效果,然后作者给我推荐了另外一种方法,可能稍微麻烦一点,但是确实有效。其实也是在StackoverFlow中赞同数比较高的回答。下面我们就详细一步一步来吧:

0. 先说一个大前提,这种方法必须要你的AS设置成project模式,而不是Android模式


1. 把你的整个Layouts文件夹拷贝出来做一个备份(备份永远是我们在做尝试之前最重要的一件事情。我一般习惯把整个工程也备份一下)

2. 整个删除你的Layouts文件夹(确保你至少做了第1步的文件夹备份)

3. 右键你的res文件夹,然后New --> directory

4. 命名为Layouts(其实你也可以起成另外的名字,无关紧要了)

5. 右键你刚建好的Layouts文件夹,New --> directory(这里面就要建我们说的第1层目录了,按照我的习惯,这一层的文件夹就是我们的工程的几大模块的分类了。当然你也可以按照Activity和Fragment来命名)

这里插一下,我当时直接在AS中操作的话,是会出现新建的目录是Layouts.mainpage.layout的格式,而不是用树形结构一层层打开的,后来我就直接在电脑的文件系统中手动新建文件夹,目的是一样的

6. 在你第5步新建好的文件夹中继续新建一个文件夹,命名为layout这一步骤非常重要!这一步骤非常重要!这一步骤非常重要!

7. 从第1步备份的文件中把相应的文件拷贝到这个layout文件夹中

8. 重复第5到第7步,把所有的布局文件分类存放好。

9. 打开build.gradle文件(注意这里会有两个build.grade文件,我们要改变的是工程里面的那个),然后添加进去下面的代码:

sourceSets {
        main {
            res.srcDirs =
                    [
                            'src/main/res/layouts/mainpage',
                            'src/main/res/layouts/investment',
                            'src/main/res/layouts/productlist',
                            'src/main/res/layouts/myaccount',
                            'src/main/res/layouts/setting',
                            'src/main/res/layouts',
                            'src/main/res'
                    ]
        }
    }
添加后的build.gradle文件类似这个样子



需要特别注意的是:代码中一定要把 src/main/res/layouts  和 src/main/res 两行代码写在最后面!!!

10. 重启一下AS应该就ok了~








  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值