我剛剛安裝了新版本的Xcode/ios6。 viewDidUnload現在已折舊。viewDidUnload不再在ios6中調用
在蘋果文檔,
viewDidUnload [...]棄用iOS中6.0。視圖不再在低內存條件下清除,因此此方法從不被調用。
但應用程序的數量都採用這種回調來釋放自己的屬性,如:
- (void)viewDidUnload {
[super viewDidUnload];
self.recipientButton = nil;
self.connectButton = nil;
self.infoLabel = nil;
}
這是釋放你的IBOutlets的最佳實踐。
所以,第一個問題:
這是怎麼回事在iOS 6中發生的這些現有的應用程序嗎?他們會泄漏嗎?
和第二個:
什麼是釋放一個IBOutlet屬性的新推薦的方式?在dealloc方法中?
感謝您的回答。事實上,我對第一個問題更感興趣。但正如http://stackoverflow.com/a/9281416/127493所說(例如,有其他主題),IBOutlet屬性應在以前的最佳實踐中在viewDidUnload中發佈。 – Martin
@martin請檢查已編輯的答案 –
當然,只有在您不*運行ARC的情況下,'dealloc'中的[object release];'纔有可能。 – 2012-10-10 13:52:52