unrecognized selector sent to class

来源:互联网 发布:苏州陶丽西怎么样知乎 编辑:程序博客网 时间:2024/09/21 09:27
问题:Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '+[UIBarButtonItem BarButtonItemWithTitle:type:target:action:]:unrecognized selector sent to class 0x87600c'

环境:XCode4.2

场景:这种问题多发生在XCode4.2 移植低版本项目时出现,编译无问题,在运行是crash。

原因:unrecognized selector sent to class,特别注意下这里面的class,这里的处理方法和unrecognized selector sent tointance,方法是完全不同的。前者主要原因是在.h文件中声明和实现多个类导致的(未从苹果文档上找到详细对应的条款,如果有谁知道可以告知下)。后面的问题主要是临时变量引起的。

解决方案:把.h文件中的多个类的声明和实现分别放到不同的文件内,然后在这些.h文件中包含这些文件即可。

参考资料:http://www.cocoachina.com/bbs/read.php?tid=90337&page=1#544989




原创粉丝点击