最近在做公司的项目,有一个长条状语音按钮(像微信的),点击后说话。奇怪的发现点击button左侧和点击button右侧的响应时间不同,点击UIButton的左侧的反应时间明显延时,不知道这是为啥。查了相关帖子,发现都说问题出在左滑返回上的问题。
于是设置了self.navigationController.interactivePopGestureRecognizer.delaysTouchesBegan=NO;
根本不管用。。。
我的Button加了这么多点击事件
每次在UIControlEventTouchDown的时候左侧要比右侧延时。
于是我干脆把左滑禁止了
self.navigationController.interactivePopGestureRecognizer.enabled=NO;
依然不管用。。。或者说似乎好像起了点作用。。。
然后实在没有办法,我注销了上面的代码,然后用Longgesture tapGesture来完成长按和短按的逻辑
if(gestureRecognizer.state==UIGestureRecognizerStateBegan)
elseif(gestureRecognizer.state==UIGestureRecognizerStateEnded)
elseif(gestureRecognizer.state==UIGestureRecognizerStateChanged)
通过这个三个状态来判断,长按的状态。最后似乎有一点点延迟,但是已经看不出来了。还算完美收工吧,我没强迫症。哈哈哈