🤖

CocoaPodsで配布するライブラリにStoryboardを含めたい

2021/12/29に公開

storyboardxibを同梱したかったのでやってみた。

と言っても、podspecにちょっと書き足してあげるだけ。

変更部分

podspecに、resource_bundlesを追記すればいい。

s.resource_bundles = {
  'バンドル名' => ['パス']
}

という感じ。

s.resource_bundles = {
  'ABC' => ['Assets/*.storyboard']
}

とか書けば、

ABC.bundleAssets配下の全ストーリーボードを入れられる。

呼び出し方

let path = NSBundle.mainBundle().pathForResource("ABC", ofType: "bundle")!
let bundle = NSBundle(path: path)
let storyboard = UIStoryboard(name: "NAME", bundle: bundle)

こんな感じで、bundleからストーリーボードを取り出せる。

xibや画像も基本的にはこのbundleを渡せば取得できる。

実際のpodspec

https://github.com/taka0125/TAKKit/blob/1.3.0/TAKKit.podspec

が追加してみたもの。

Discussion