美文网首页
[****ViewController respondsToSe

[****ViewController respondsToSe

作者: 无声落叶 | 来源:发表于2017-12-08 18:00 被阅读0次

崩溃出现了,而且没有任何有效的提示,在断点处看不到断在哪里,只有在log有输出下面一句。[****ViewController respondsToSelector:]: message sent to deallocated instance

很明显这是因为一个UIViewController释放后,又再次向这个VC调用了某些请求导致。而且根据log发现该VC是执行了dealloc方法,这就说明可能是在VC中设置了 xxx.delegate=self; 当VC释放后,这个xx还没有被释放,所以xx的回调方法还在调用delegate即这里的vc, 所以崩溃就发生了。

解决办法是在dealloc中设置xx.delegate = nil;即可。

我遇到这个crash是一个Controller中设置了tabbar.delegate = self;Controller释放后windows的root交给了tabbar,这个时候不触发tabbar的代理方法是没问题的,一旦触发就会去给Controller发消息。导致carsh。

相关文章

网友评论

      本文标题:[****ViewController respondsToSe

      本文链接:https://www.haomeiwen.com/subject/ffqyixtx.html