Cry*_*tal 10 iphone xcode mkmapview lldb
我正在玩地图工具包,我创建了一个注释.我试图找到我的错误,因为这个错误:
解释了类AddressAnnotation的实例0x1b7ac0,而键值观察者仍然注册了它.观察信息被泄露,甚至可能被错误地附加到其他物体上.在NSKVODeallocateBreak上设置断点以在调试器中停止.这是目前的观察信息:
我不确定NSKVODeallocateBreak在哪里设置断点.我以为我可以使用Instruments来调试它,但是当我尝试时,它崩溃而没有给我任何指示它崩溃的地方.有什么想法吗?
Fra*_*ano 16
您可能在代码中执行以下操作:
[addressAnnotation addObserver:self
forKeyPath:kSelectedAnnotationObserverKeyPath
options:NSKeyValueObservingOptionNew
context:@"selectedOrDeselected"];
这意味着您正在注册观察者以找出何时选择了注释.
从地图中删除注释时应删除观察者,如下所示:
[addressAnnotation removeObserver:self forKeyPath:kSelectedAnnotationObserverKeyPath];
这应该删除错误.如果没有,你想调试它,你当然应该设置一个断点NSKVODeallocateBreak.为了做到这一点,打开Run菜单,Manage Breakpoints,Add symbolic breakpoint,输入NSKVODeallocateBreak你瞧.
希望能帮助到你!
要在此处使用LLDB设置断点,启动应用程序,然后暂停它,并在LLDB调试提示符处写入:
breakpoint set --name NSKVODeallocateBreak
Run Code Online (Sandbox Code Playgroud)
现在你已经设置了一个断点.希望这可以帮助您找到问题,这可能是@frowing所描述的那种问题
| 归档时间: |
|
| 查看次数: |
7912 次 |
| 最近记录: |