2009-04-30 7 views
8

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

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

答えて

0

静的ライブラリにはリソースがないため、「xibをライブラリの一部として組み込む」ということはよく分かりませんが、スタンドアロンでは出荷されないため、そうではありません必要があります。独自のプロジェクトでコードを再利用したい場合は、スタティックライブラリを保持していた場所にxibを置いて、そのライブラリを使用するプロジェクトにxibsだけを含めることができます。

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

2

私は他の開発者が使用するライブラリとして私のプロジェクトをエクスポートしたかった同じ問題を抱えていました。 私の見解にぴったりの解決策が見つかりました。

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

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

私はこのプラグインを建てた人を知りませんが、それは

+0

がどのようにペン先を参照して終わるんでした魔法のように動作しますか?私はinitWithNibName:bundleを試していますが、何をバンドルするべきか分かりません。 – OlivaresF

+1

通常のアプリケーション開発と同様に、nibファイルやその他のリソースを使用します。このツールは、静的ライブラリとリソースを分離したフォルダ内のすべてのプロジェクトをまとめます。このライブラリを含めるアプリケーションは、バイナリだけでなく、このツールによってエクスポートされたフォルダ全体を参照する必要があります –

関連する問題