Androidレイアウトフォルダにサブフォルダを含めることができますか?質問する

Androidレイアウトフォルダにサブフォルダを含めることができますか?質問する

現在、すべての XML レイアウト ファイルを 'res/layout' フォルダー内に保存しているので、小規模なプロジェクトであれば管理は可能かつ簡単ですが、大規模で重いプロジェクトの場合は、レイアウト フォルダー内に階層とサブフォルダーが必要になります。

例えば

layout
-- layout_personal
   -- personal_detail.xml
   -- personal_other.xml
--layout_address
  -- address1.xml
  -- address2.xml

同様に、大規模なアプリケーション用のサブフォルダーを作成したいのですが、Android プロジェクト内でそれを実現する方法はありますか?

レイアウト フォルダー内に layout-personal サブフォルダーと layout_address サブフォルダーを作成できますが、R.layout._______ を使用して XML レイアウト ファイルにアクセスするときに、メニュー内に XML レイアウト ポップアップが表示されません。

ベストアンサー1

でこれを行うことができます。私gradleデモプロジェクト方法を示します。

コツはGradleの機能を使うことです複数のリソースフォルダを結合する、res フォルダーとsourceSetsブロック内のネストされたサブフォルダーを設定します。

奇妙なことに、そのフォルダーの子リソース フォルダーを宣言する前に、コンテナー リソース フォルダーを宣言することはできません。

以下はデモのファイルsourceSetsのブロックです。サブフォルダーが最初に宣言されていることに注意してください。build.gradle

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

ネストされたリソースの画像

また、実際のリソースファイル(png、xmlレイアウトなど)の直接の親は、仕様

おすすめ記事