2010-11-02 2 views
1

J'ai un problème étrange.Pourquoi mon UINavigationController envoie-t-il un message à un Zombie?

J'ai un UINavigationController avec UITableViewController à l'intérieur.

En bref: UINavigationController + UITableViewController + orientation de l'appareil de changement provoque:

[CALayer release]: message sent to deallocated instance 

Le problème: table après le défilement rapide et orientation de l'appareil changeant quelques fois le « [Communiqué CALayer]: message envoyé à l'instance désallouées "erreur apparaît.

Je débugger par « Affectations » et voir:

0 CALayer Malloc 1 UIKit [UIView _createLayerWithFrame:] 
1 CALayer Zombie -1 QuartzCore CA::release_objects<X::List<void const*>*) 

Qu'est-ce que cela veut dire et ce que je devais faire?

+0

Ayant le même problème, avez-vous jamais découvert ce qui l'a causé? – flavianatill

Répondre

1

Vous avez clairement un problème de gestion de la mémoire. Le meilleur pari pour vous serait Analyze your code, que vous pouvez faire avec CMD+SHIFT+A. Il exécutera une analyse statique de votre code et marquera avec de jolies flèches bleues les endroits où le clang analyser signale des problèmes de mémoire possibles.

En guise de supposition, je parie que vous avez un problème dans un viewDidAppear/viewDidDisappear.

Questions connexes