Ich habe ein UIScrollView, das mehrere Seiten mit Informationen enthält, die dem ScrollView als Unterviews hinzugefügt werden. Der Controller jeder Unteransicht ist in einem NSMutableArray in scrollViewController gespeichert.Subviews freigeben
Ich habe einige Speicherlecks in den Unteransichten, und ich versuche, sie zu beheben, indem Sie sicherstellen, dass Dealloc-Methode jedes Subview-Controller aufgerufen wird. Ich mache das, indem ich die View-Controller aus der Dealloc-Methode des scrollView-Controllers freigebe.
Wenn ich versuche, das Array freizugeben, nachdem die SubViews-Controller freigegeben wurden, stürzt die Anwendung ab.
Code folgt ... Was mache ich falsch?
- (void)dealloc {
// Loop through the array of subView controllers and release them
for (int i = 0; i < [viewControllers count]; i ++) {
[[viewControllers objectAtIndex:i] release];
}
[viewControllers release]; // Crashes here unless I remove the loop above
[scrollView release];
[pageControl release];
[theKnot release];
[super dealloc];
}