2009-11-09 14 views
6

これは混乱しないはずです。私はそれにコントロールを束にカスタムUIViewがあります。 UILabels、ボタンなど。Interface Builderを使用してこのNibを作成しました。私はインターフェイスビルダーを使用して別のUIViewにこのカスタムuiviewを配置することができるようにしたい。Interface Builderを使用してカスタムUIViewを作成し、Interface Builder経由でアクセス可能または配置可能

UIViewカスタムクラスをペン先にリンクするにはどうすればよいですか? initWithCoderが呼び出されますが、このクラスをペン先からロードする必要があります。

おかげ

+0

回答はありますか?ありがとうございます。 – JoePasq

+0

@JoePasqここに有効な回答がありますか? –

+0

私は実際には残念ながらこの作業をしていません – Nader

答えて

3

これを行うには、カスタムコントロールのクラスを使用するInterface Builder用のプラグインを作成する必要があります。プラグインを作成してインストールするとすぐに、ビューのインスタンスをInterface Builderで別のウィンドウまたはビューにドラッグアンドドロップして追加することができます。 IBプラグインの作成については、Interface Builder Plug-In Programming Guideと、Aaron Hillegassの書籍Cocoa Programming for Mac OS Xから独自のIBパレットコントロールを作成する章を参照してください。

Hereは、受け入れられた回答の元の著者へのリンクa similar questionです。

+3

XCode 4.0以降ではサポートされていません –

0

あなたはインターフェイスBuilderを使用してUIViewControllerオブジェクトを挿入し、UIViewControllerの「ペン先名 "プロパティを設定することができます。 これがあなたのモデルを駄目にするかどうかは分かりませんが、あなたがやろうとしていることをやるための唯一の方法だと思います。

+0

こんにちはケニー、速い応答のために感謝します。私はちょうどそれを試みた。私はメインビューにUIViewControllerを追加し、カスタムサブビューのペン先にペン先名を設定し、インターフェイスビルダーのカスタムビューにuiviewcontrollerのビュープロパティを接続しました。同じこと。それは表示されません。 initWithCoderがカスタムビューで呼び出されていますが、何も表示されません。 – Nader

0

アイデンティティ・インスペクタ・ツール(Command-4)を起動してカスタム表示を選択し、「クラス」ポップアップでジェネリックUIViewではなくカスタム・クラスの名前を選択します。あなたはivarにも接続したいかもしれません。あなたのViewControllerで、その前にIBOutletというカスタムクラスのインスタンスを宣言してください。次に、接続インスペクタを起動し、カスタムビューの参照コンセントからFile's Owner(ViewControllerのインスタンスにする必要があります)をクリックしてドラッグし、ビューをivarに接続し、ivar名を選択します。

NIBが読み込まれたら、そのタイプのオブジェクトを作成し、その変数に接続する必要があります。

関連する問題