В Objective-C лучше всего:
-
Объявлять объекты, такие как кнопки в .h, а затем синтезировать в .m
.h @interface SomeViewController : UIViewController @property (strong, nonatomic) UIButton *someButton; @end .m @implementation SomeViewController @synthesize someButton = _someButton; @end
-
или объявить их как ivars в .m
@interface SomeViewController () @property (strong, nonatomic) UIButton *someButton; @end
Я замечаю, что во многих кодеках Apple, в частности, в их примере кода Breadcrumbs, многие из их свойств объявлены в интерфейсе. Есть ли разница между этими двумя? Я также заметил, что когда свойства объявлены в @interface
, они автоматически синтезируются с помощью символа подчеркивания, что делает синтез someButton = _someButton
бесполезным.