我需要从一个UIScrollView触摸位置。 但是,当我创建我的滚动视图的子类:
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
NSArray *touchesArray = [touches allObjects];
UITouch *touch = (UITouch *)[touchesArray objectAtIndex:0];
CGPoint point = [touch locationInView:self];
self.position = point;}
该功能touchesBegan
并不总是叫。 如果我刷快, touchesBegan
不会被调用,但scrollViewDidScroll
被直接调用来代替。
我不能使用UIGesture (UITapGestureRecognizer, ... )
因为用户不点击或滑动。
是否有其他方法来得到的UIScrollView的位置?
编辑:
感谢ThXou: https://stackoverflow.com/a/15763450/1752843
UIScrollView的子类:
- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event{
self.position = point;
return self;
}