Как мне установить сохраняемое свойство при создании объекта с использованием alloc и init?( Без использования автоматического выпуска )
С этой строкой в заголовке (и соответствующей строкой @synthesize в реализации):
@property(retain)UIWebView *webView;
Это три варианта Iиметь (я думаю):
UIWebView *tempWebView = [[UIWebView alloc] init];
[tempWebView setDelegate:self];
tempWebView.hidden = YES;
self.webView = tempWebView;
[tempWebView release];
(этот, кажется, лучший в отношении управления памятью, но он содержит больше строк кода и включает в себя глупое имя переменной, поэтому снижение читабельности)
self.webView = [[UIWebView alloc] init];
[self.webView release];
[self.webView setDelegate:self];
self.webView.hidden = YES;
(на этот раз более очевидно, что происходит, но управление памятью выглядит не очень хорошо, и анализатору Xcode это не нравится)
webView = [[UIWebView alloc] init];
[self.webView setDelegate:self];
self.webView.hidden = YES;
(Этоодин из них самый короткий, он более очевиден, чем в первом примере, но происходит в обход установщика, поэтому, если позже будет реализована пользовательская реализация сеттера, в этом случае работать не будет)
Так какой пример следует использовать или есть лучший способ?