Androidのレイアウトをフォルダ分けしたかった

アプリ作ってて画面が増えてくるとレイアウトファイルも増えてくるのでどれがどれなのかわからなくなってくる。 単純にフォルダを切ってみたらエラーが出たのでどうするか考えてみた。

一番しっくり来たのは適当にフォルダ切ってgradleにパスを書いてあげる方法。 イケてるんだけどAndroidStudio使ってると良きに計らわれてLayout配下に各xmlがあるように見えて分けてる意味が無くなってしまう。。。

https://github.com/eskimoapps/ResourceNestingExample

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

妥協で考えたのは普通にファイル名のprefixに分類書いていく案。 階層は変わらんけどまぁ妥当な対応なのかなー。

layout/
main_activity.xml
main_hogehoge.xml
sub_activity.xml
sub_hogehoge.xml

追記

最初の奴と似てるけど一番しっくり来たのでこれでしばらくやってみる予定。 AndroidStudioが予期に計らってしまうのは変わらないけどツリー表示をAndroidからProjectに変えておけばちゃんとわかるしまぁ良いでしょ。

medium.com