質問

いくつかのxibを含む静的ライブラリがあります。これらは基本的にプロジェクト間で同じです。ライブラリの一部としてxibsを含めたいです。 veiwcontrollersを含め、呼び出し元のプロジェクトでこれらのコントローラーを参照できますが、ロードするxibはありません。ライブラリプロジェクトでxibを右クリックすると、ターゲットの一部になりません。

CFPluginBundleの作成について考えましたが、新しいプロジェクトが作成されます。 IBOutletとIBActionの参照をすべて失います。特定のコントローラーへのアウトレットとアクションも持つxibを再利用する最良の方法は何ですか?

役に立ちましたか?

他のヒント

他の開発者が使用するライブラリとしてプロジェクトをエクスポートしたいとき、私は同じ問題を抱えていました。 私の見解に対する完璧な解決策を見つけましたが、あなたの答えにもなるようです。

リソースを含むライブラリとしてプロジェクトをビルドできるxcodeプラグインがあります。

https://github.com/kstenerud/iOS-Universal-Framework

このプラグインを作成した人は知りませんが、それは魅力のように機能します

静的ライブラリにはリソースを含めることができないため、「ライブラリの一部としてxibを含める」という意味がわかりませんが、スタンドアロンライブラリはスタンドアロンで出荷されないため、する必要があります。独自のプロジェクトでコードを再利用したい場合は、静的ライブラリを保持している場所にxibを保持し、ライブラリを使用するプロジェクトにxibを含めることができます。

CFPluginBundleルートを選択すると、既存のプロジェクトに新しいバンドルターゲットを作成できます。テンプレートには魔法はありません。ダミーファイルを作成し、適切なビルド設定を有効にするだけです。それらを既存のプロジェクトの新しいターゲットにコピーすれば、問題なく機能します。とはいえ、IBOutletおよびIBActionの参照を失うことの意味はわかりません。その情報はプロジェクトではなくxib(およびxibで使用しているクラス)の一部であるためです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top