Crash-app voor navigatie-controller vrijgeven

Ik heb een probleem met de release in navigationController. Ik heb een kaartweergave met punten. Wanneer ik op kaartpunt klik maak ik nieuw detailViewController met detail. Alles werkt goed, maar als ik op mijn knop terugdruk, terug naar de mapController en dan crash. Als ik commentaar geef, werkt alles goed, maar mapController is geen release. Hier is mijn code:

FavoriteDetailViewController *detailViewController = [[FavoriteDetailViewController alloc]
initWithNibName:@"FavoriteDetailViewController" bundle:nil favoriteID:
[[(DisplayMapAnnotation*)view.annotation detailID] intValue] favoriteName:
[(DisplayMapAnnotation*)view.annotation title] favoriteCompany:
[(DisplayMapAnnotation*)view.annotation subtitle] favoriteLocation:
[(DisplayMapAnnotation*)view.annotation detailLocation] favoriteHtmlString:nil
favoriteJobIndex:0 favoriteTotalJobs:1 favoriteGeoLat:detailArrayData.geoLat
favoriteGeoLng:detailArrayData.geoLng favoriteFullUrl:detailArrayData.fullUrl
favoriteExportUrl:detailArrayData.exportUrl favoriteIdent:1];

[self.navigationController pushViewController:detailViewController animated:YES];

[detailViewController release];
1
Ik heb ook met dit probleem te maken gehad. Ik heb het opgelost door de navigatiecontroller gewoon niet vrij te geven. Dat is geen beste oplossing maar het werkt voor mij.
toegevoegd de auteur rohan-patel, de bron

1 antwoord

Iets in FavoriteDetailViewController crasht wanneer het wordt verwijderd. Kijk goed naar de dealloc-methode. Zorg er ook voor dat u de deelnemers en de deelnemers van de FavoriteViewController op nul zet.

0
toegevoegd
Mag ik een volgende vraag? Misschien stom, maar ik moet het weten. Wanneer wordt een dealloc-methode in de navigatiecontroller aangeroepen? Het is belangrijk voor mij omdat ik bij het openen van detailController een beetje geheugen gebruik. Als ik op de terugknop druk, ga ik terug, maar het geheugen wordt nog steeds gebruikt. Wanneer ik het opnieuw open, zal het het volgende deel van het geheugen gebruiken. Wanneer ik meerdere keren herhaal het volgende, besteed ik grote hoeveelheden geheugen. Naar mijn mening wordt dealloc-methode nooit genoemd
toegevoegd de auteur mysho, de bron
Ik weet niet waarom, maar toen ik dit maakte: [self.navigationController pushViewController: detailViewController geanimeerd: YES]; detailViewController = nihil; [detailViewController release]; Het werkt goed ... Maar ik heb nog steeds het bovenstaande probleem
toegevoegd de auteur mysho, de bron