Iphone 如何在scrollViewDidScroll方法中获取触摸位置?

Iphone 如何在scrollViewDidScroll方法中获取触摸位置?,iphone,ios,Iphone,Ios,当我滚动屏幕时,我尝试获取触摸位置。 我试着从touchBegin()获取它,但我做不到。 这是因为滚动期间从未调用touchBegin。 我怎样才能解决这个问题??? 快速回答我。我找到了自己的it解决方案 首先,我将scrollView.contentSize设置为scrollView.frame。所以它不能调用scrollViewDidScroll - (id)initWithFrame:(CGRect)frame { .... self.frame = frame

当我滚动屏幕时,我尝试获取触摸位置。 我试着从touchBegin()获取它,但我做不到。 这是因为滚动期间从未调用touchBegin。 我怎样才能解决这个问题???
快速回答我。

我找到了自己的it解决方案

首先,我将scrollView.contentSize设置为scrollView.frame。所以它不能调用scrollViewDidScroll

- (id)initWithFrame:(CGRect)frame
{
    ....
    self.frame = frame
    self.contentSize = frame;
    ....
}
第二,触摸开始时,设置scrollView.contentSize我想要的大小。然后事件将转到scrollViewDidScroll。你可以做点什么

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
      ....
    self.contentSize = myView.frame.size;
      ....
}
第三,在ScrollView中设置contentSize并保存contentOffest

-(void) scrollViewDidEndDecelerating:(UIScrollView *)scrollView
{
    CGPoint pointTemp = self.contentOffset;
    self.contentSize = self.frame.size;
    self.contentOffset = pointTemp;
}

这将是可悲的方式。如果您认识其他人,请使用scrollview手势识别器教我:

-(void)scrollViewDidScroll:(UIScrollView *)scrollView
{
    CGPoint positionInView = [scrollView.panGestureRecognizer locationInView:myView];
}

内容大小大于我的视图框,我无法输入ToucheSStart方法。由于调用了scrollViewDidScroll方法和钩子接触开始方法。所以我看不到他的位置