Ich habe gerade die neue Version von Xcode/ios6 installiert. viewDidUnload wird jetzt abgeschrieben.viewDidUnload nicht mehr in ios6 aufgerufen
Im Apfel doc,
ViewDidUnload [...] Veraltete in iOS 6.0. Ansichten werden nicht mehr unter Bedingungen mit wenig Arbeitsspeicher gelöscht und daher wird diese Methode nie aufgerufen.
Aber Zahlen von Anwendungen verwenden diesen Rückruf ihre Eigenschaften zu lösen, wie:
- (void)viewDidUnload {
[super viewDidUnload];
self.recipientButton = nil;
self.connectButton = nil;
self.infoLabel = nil;
}
Dies war die beste Praxis Ihre IBOutlets zu lösen.
Also, erste Frage:
Was diese bestehenden Apps in iOS 6 passieren wird? Werden sie lecken?
und zweite:
Was ist der neue empfohlene Weg, um eine IBOutlet Eigenschaft zu veröffentlichen? In Dealloc-Methode?
Danke für Ihre Antwort. In der Tat bin ich mehr daran interessiert, die erste Frage zu stellen. Aber wie http://stackoverflow.com/a/9281416/127493 sagt (zum Beispiel gibt es Zahlen von anderen Themen auf), sollten IBOutlet Eigenschaften in viewDidUnload in früheren Best Practice veröffentlicht werden. – Martin
@martin Bitte überprüfen Sie die bearbeitete Antwort –
Natürlich ist '[Objekt release];' in dealloc nur möglich, wenn Sie ARC * nicht * ausführen. –