新版本im功能开发过程中,遇到个奇葩的问题。
就是点击语音按钮,点击一下松开,不执行UIControlEventTouchUpInside的方法。所以导致一直在录音
但是长按2秒以上,是可以执行UIControlEventTouchUpInside的方法,可以正常录音停止的。
前期定位可能是项目中的一些UIButton分类可能影响了,也查找了,确实有个UIButton+SDDelayButton延时按钮
该类别前期是写在宏里边的,所以对于项目是全局的,在点击说话按钮的时候可能影响到了按钮的正常功能
解决方法:
在按钮需要延时,例如登录按钮(需要添加延时点击功能)的时候,引用该文件
以为就👌了,心态💥了,那还能是什么问题,继续处理了一天,还是不能解决
后来静下来,还是觉得UIButton+SDDelayButton有嫌疑,所以全部注释掉,并删除文件,尝试发现,就是这个小鬼的问题。但是这个文件命名已经不再是全局的了,为啥还会影响到语音按钮?并且语音按钮也确实执行了他的方法,-----我没有引用啊??
fuckbug.jpg
原来是这样--
一开始这个文件在宏里边引用,编译进来了,所以即使后期修改了文件的引用位置,问题是已经在这儿了,自然也就依然是面对项目全局的。。
以后删除全局的千万记得这儿删掉。。。
网友评论