背景
フォルダで分類分けされたファイルを、そのまま開発中のアプリに持っていきたいです。
普通にファイルをXcodeのプロジェクトに追加すると、下のようにフォルダ階層がない状態でResource内にコピーされます。
少し前のバージョンのXcodeでは、サイドバーにDrag & Dropしたとき、「フォルダ構成を維持しするか?」みたいな選択肢が出てきました。確か...
今もそのような選択肢は出てくるのですが、なぜか反映されない...
バグっぽい気もします...
直接Copy Bundle Resourcesに追加する
サイドバーでなく、Build Phases
のCopy Bundle Resources
で操作します。
+ボタンで追加、または直接Drag & Dropします。
すると、どのように追加するかの選択肢が現れます。
ここでCreate folder references
を選択します。
このように、フォルダとして画面上に追加されました。
アプリのResources構成を確認する
アプリのパッケージを確認すると、Resourcesフォルダの中に追加したフォルダがあり、ファイルもちゃんと格納されています。
リソースへのアクセス
リソースフォルダは下記のように取得できます。
リソースフォルダを取得する
let resPath = Bundle.main.resourcePath
resPath
はString
なので、フォルダ名やファイル名をappendしてアクセスすることができます。