2010-11-01 3 views
0

Je développe un lecteur RSS pour iPhone, et j'ai une liste de NSDictionary avec le nom du site et l'URL. Quand je clique sur le DetailDisclosureButton il me conduit à un autre écran avec les flux du site (je n'ai pas implémenté l'analyseur xlm, donc ça m'apporte juste l'écran). Voici le problème après que je suis allée en arrière spécifiquement 5 fois mon application tombe en panne, et il ne montre aucun message sur le journal.iPhone app s'écraser pendant la navigation

Je n'ai aucune idée de ce qui se passe, qu'est-ce qui pourrait causer une telle erreur?

merci!

- (void)tableView:(UITableView *)tableView accessoryButtonTappedForRowWithIndexPath:(NSIndexPath *)indexPath 
// Gets the site; 
NSDictionary *site = [sites objectAtIndex:indexPath.row]; 

// instantiate a view to see the unread news. 
ViewUnreadController *uController = [[ViewUnreadController alloc] init]; 

uController.title = [site objectForKey:@"site"]; 
uController.site = site; 

// adds the view to NavigationControllers stack (just adds a back button) 
[self pushView:uController withBackTitle:@"Signatures"]; 

[site release]; 
[uController release]; 

Et une information supplémentaire j'utilise l'iPhone simulator 4.0.

+0

Ce qui a provoqué l'erreur est un bogue dans votre application. La bonne résolution est de corriger le bug, votre application ne tombera plus en panne (en supposant que c'est la seule). – JeremyP

+0

La "réponse" ci-dessus peut ne pas sembler très utile, mais elle est aussi précise que n'importe qui peut l'obtenir sauf si vous publiez le code qui plante, et peut-être la sortie du journal de la console incluant le message d'erreur et la trace de la pile. – JeremyP

Répondre

1

Ha! J'ai réalisé que je libérais la variable "site" (sans la retenir), puisqu'elle pointait vers un objet dans un NSMutableArray le nombre de références a atteint zéro!

0

Certes, vous êtes sur-relâcher/sous-conserver quelque chose. Mais sans vous voir code, personne ne pourra en dire plus.

NSZombieEnabled pourrait vous donner quelques informations utiles

0

Eh bien, vous ne nous avez pas vraiment donné des informations, il pourrait donc être un grand nombre de choses. Profil votre application, publiez le journal des accidents ici comme une mise à jour à votre question. Est-ce vu sur le simulateur ou un appareil? Quel appareil ou quels paramètres du simulateur utilisez-vous?

En devinant arbitrairement, peut-être que vous créez de nouveaux UIControllers et vues à chaque fois et que vous manquez de mémoire. Mais c'est juste un coup dans le noir à une cible que vous ne m'avez pas dit où est, ou si elle est encore là.