В большинстве примеров я вижу следующую настройку IBOutlets:
(Example A)
FooController.h:
@interface FooController : UIViewController {
UILabel *fooLabel;
}
@property (nonatomic, retain) IBOutlet UILabel *fooLabel;
@end
FooController.m:
@implementation FooController
@synthesize fooLabel;
@end
Но это работает также прекрасно (обратите внимание: нет свойства и не синтезируется):
(Example B)
FooController.h:
@interface FooController : UIViewController {
IBOutlet UILabel *fooLabel;
}
@end
FooController.m:
@implementation FooController
@end
Есть ли недостатки в определении IBOutlets, как в примере B? Как утечки памяти? Кажется, что он работает нормально, и я предпочитаю не раскрывать IBOutlets как общедоступные свойства, поскольку они не используются как таковые, они используются только в реализации контроллера. Определение его в трех местах без реальной потребности не поражает меня, как очень СУХОЙ (не повторяйте себя).