美文网首页
关于UIScrollView不能响应UITouch事件的解决办法

关于UIScrollView不能响应UITouch事件的解决办法

作者: 某天天 | 来源:发表于2018-04-18 17:33 被阅读0次

原因是:UIViewtouch事件被UIScrollView捕获了。

解决办法:让UIScrollView将事件传递过去。于是最简单的解决办法就是加一个UIScrollViewcategory。这样每个用到UIScrollView的地方只要导入这个category就可以直接响应相关的touch事件了。

类似问题:在论坛看见很多人说UIImageView也没办法响应,不过我想解决办法和原因都是一样的。

#import "UIScrollView+UITouch.h"

@implementation UIScrollView (UITouch)

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
  [[self nextResponder] touchesBegan:touches withEvent:event];
  [super touchesBegan:touches withEvent:event];
}

-(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
  [[self nextResponder] touchesMoved:touches withEvent:event];
  [super touchesMoved:touches withEvent:event];
}

- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
  [[self nextResponder] touchesEnded:touches withEvent:event];
  [super touchesEnded:touches withEvent:event];
}

@end

相关文章

网友评论

      本文标题:关于UIScrollView不能响应UITouch事件的解决办法

      本文链接:https://www.haomeiwen.com/subject/aihbkftx.html