2011-12-21 7 views
1

これは何度も議論されていることは知っていますが、まだ問題を回避するためにいくつかの問題があります。私はUIViewのサブクラスであるクラスMyViewを持っています。これまでのところ、このカスタムクラスではレイアウト、UIなどを基本的に設定していました。アウトレットからのカスタムUIView

私は個別のUIViewControllerを持っています。ビューコントローラのNibでは、ビューのクラスをカスタムビューのクラスに設定してコンセントに接続しましたが、空のビュー以外は何も表示されません。

どのようにしてnibからビューをロードしますか?私は単にself.theOutletForMyCustomView = nibからロードするか、それとも何か他のことを言っていますか?あなたの助けすべての

答えて

1

初のおかげで、あなたは、あなたがあなたのUIViewController interfaceの内側にそのようなあなたの特性を保持する必要が続いている
Xcode

のようなあなたのUIViewController nibファイル内の自分のCustomViewの名前を設定する必要があります。

@property (nonatomic, retain) IBOutlet CustomView *myCustomView; 

またはivar動作するはずですが、assignIBOutlet propertyは動作しません。

CustomView class implementationの中にCustomViewをカスタマイズした場合。 の代わりにawakeFromNibまたはinitWithCoder:で初期化を行うことに注意してください。

+0

こんにちは、ありがとう、私はそれをやった。しかし、私は空白のビューを取得します。 –

+0

@MarioPen:あなたのCustomViewをあなたのUIViewControllerのnibファイルの中かカスタムビューの実装の中にカスタム化しましたか? NSLog(@ "%@"、self.myCustomOutlet);このログを表示するのは何ですか? – klefevre

+0

はい、両方のクラスを正しく設定しました。ログには、コンセントが実際に正しく接続され、クラスを指していることが示されています。ビューコントローラのビュー内でドラッグしたビュー(およびクラスを変更したビュー)は空白で、それが表示しているものです。私のカスタムビューにはいくつかのラベルと画像があり、それらのどれも表示されていないので、NIBからロードされていないと信じています –

関連する問題