感觉反应慢就对了,因为加到scrollView上的btn 点击事件是有150ms的延迟判断的
原理不复杂,简单来说就是 150ms 内 判断按了哪个的问题
解决办法:我来简单扼要的说 ~
需要自定义scrollView
然后加上这两个方法,就是重写
- (BOOL)touchesShouldCancelInContentView:(UIView *)view
{
[super touchesShouldCancelInContentView:view];
return YES;
}
- (void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event
{
[super touchesCancelled:touches withEvent:event];
}
然后用 自定义scrollView
初始化scrollView的时候设置delays这个属性
scrollView.delaysContentTouches = NO;
就ok了
其他人的文章吧,也挺好,就是感觉表达不是很直击要害,反正我的方法也是从别人那里拿到的,感谢那些人
为什么 光设置 NO 就不行呢,不自定义scrollView你会发现,设置完NO之后,就不卡了,但是滑不动,所以要加上面两个方法
有的人还说要加这一句
mainScrollView.canCancelContentTouches = YES;
这个是默认就是YES吧,所以不需要写
希望给你带来帮助,还有主要为了方便拿手机查看代码,写一篇
网友评论