出现unrecognized selector sent to
今天在做一个加载摄像头点击跳转到监控播放页面的时候出现了unrecognized selector sent to instance。这个坑把我一个多小时时间就坑进去了,所以写一篇日记纪念一下这个排除BUG的时刻。
调试窗口显示:*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UIView setDelegate:]: unrecognized selector sent to instance 0x14009f4f0'
这是什么鬼,我复制之后直接百度搜出N中解决办法,都没有解决问题。后面自己自己静下心来分析终于把问题解决,这篇文章主要是分享一下分析过程,问题千奇百怪,情况也是多种多样。学会分析问题的方法,最重要的是心静啊!
断点项目断点停在displayView设置代理的时候,我第一个检查的就是@interface LandDisplayViewController ()<LuDisplayManagerDelegate>有没有引入协议,协议@required和@optional 有没有必须实现的协议没有实现。
调试信息[UIView setDelegate:]: unrecognized selector sent to instance看来问题是处在UIview视图上,displayView应该是有问题的,查看代理写法什么的没问题;
后来突然想到改变了displayView的类,原来是UIView *displayView;后来改为LuDispalyManager,但是xib中视图的类还没有改变,所以将displayView的Class改为LuDispalyManager,改完运行之后,问题顺利解决,水了半小时又到了下班时间了;