Why does my UINavigationController send a message to a Zombie?
I have a weird problem.
I have a UINavigationController with UITabl开发者_JS百科eViewController inside.
In a nutshell: UINavigationController + UITableViewController + change device orientation causes:
[CALayer release]: message sent to deallocated instance
The problem: after fast scrolling table and changing device orientation a few times the "[CALayer release]: message sent to deallocated instance" error appears.
I debug it through "Allocations" and see:
0 CALayer Malloc 1 UIKit [UIView _createLayerWithFrame:]
1 CALayer Zombie -1 QuartzCore CA::release_objects<X::List<void const*>*)
What does it mean and what I supposed to do?
You clearly have a memory management issue.
The best bet for you would be to Analyze your code
, which you can do with CMD+SHIFT+A
. It will run a static analysis of your code and mark with nice blue arrows the places where the clang analyser reports possible memory issues.
As a guess, I'd wager that you have a problem in a viewDidAppear / viewDidDisappear.
精彩评论