unrecognized selector sent to instance的定位

      造成unrecognized selector sent to instance的原因很多,对象被提前release、引用的实例的方法不存在了或者这个方法在类中没有实现等等。控制台仅是简单的告诉你出现此种错误,随后一堆堆堆栈相关的地址。

  这时想快速定位BUG的话,定制DEBUG断点是一个相比较好的办法,因为更好的我还没想到。

  OK,废话少扯,步骤如下:
  1.在Xcode的菜单栏中选择Debug->Breakpoints->Create Symbolic Breakpoint点击后,会添加一个断点调试,弹出编辑框

  2.在编辑框的Symbol中填写-[NSObject(NSObject) doesNotRecognizeSelector:]此方法签名,对于边看本博文边试验的同学来说,在复制方法签名后想粘贴的时候,发现Xcode中的编辑框不见了,此时右击刚才添加的那个断点,选择Edit Breakpoint即可。

  3.运行代码,断点就会停留在导致崩溃的地方。

 

posted @ 2015-05-06 16:05  刘子  阅读(369)  评论(0编辑  收藏  举报