Я следую за Программой iOS от Big Nerd Ranch от Joe Conway, и я был озадачен, когда увидел следующий код.Объявление @property без @synthesizing
WebViewController.h
#import <Foundation/Foundation.h>
@interface WebViewController : UIViewController
@property (nonatomic, readonly) UIWebView *webView;
@end
WebViewController.m
#import "WebViewController.h"
@implementation WebViewController
- (void)loadView
{
// Create an instance of UIWebView as large as the screen
// Tell web view to scale web content to fit within bounds of webview
}
- (UIWebView *)webView
{
return (UIWebView *)[self view];
}
@end
В случае, если не один синтезирует свойство объявлен в файле .h? Xcode также не выдавал предупреждения (которое обычно делает, когда я объявляю свойство с синтезом).
Кстати, в книге, он также отметил,
В WebViewController.h добавьте свойство (но не переменную экземпляра)
Не объявляя свойство автоматически генерировать переменная экземпляра для вас? Дайте мне знать, что я пропустил. Благодарю.
Я вижу! Большое вам спасибо за вашу помощь! Не могу поверить, что я пропустил геттер. – revolver
Последняя версия XCode автоматически синтезирует свойства для вас –