プロパティがない場合 (iOS の場合) IBOutlet は ivar になり、KVC によって設定および保持されます。を使用すると@property
、ivar はプロパティを設定することによって設定されます。
ARC プロジェクトでは、ペン先を作成して項目 (たとえばUILabel
) を .h ファイルにドラッグする@property
と、.m ファイルと同様にストロングが追加され、プロパティを nil に設定する行がviewDidUnload
メソッドに追加され、プロパティの @synthesize ステートメント。
その作業の保持を処理する他の方法がありnib
IBOutlets
、いくつかのメトリックでさらに優れている場合があります。
Apple ドキュメントResource Programming Guide - Managing the Lifetimes of Objects from Nib Files から:
アウトレットの動作はプラットフォームに依存するため、実際の宣言は異なります。
iOS の場合は、次を使用する必要があります。
@property (nonatomic、retain) IBOutlet UserInterfaceElementClass *anOutlet;
OS X の場合は、次を使用する必要があります。
@property (assign) IBOutlet UserInterfaceElementClass *anOutlet;
私の信念は、Apple のやり方に反抗してはならないということです。また、Apple がプラットフォームの将来に関する内部情報を持っていることも考慮してください。:-)