出现后,UIScrollView不会立即收到触摸事件

时间:2015-01-15 21:28:16

标签: ios objective-c uiscrollview

我有一个绘图应用程序,我将图像加载到UIImageView中,并使用touchesBegan,touchesMoved和touchesEnded绘制简单的线条。我将UIImageView移动到UIScrollView中,以允许用户放大绘图。现在,在加载图像后,如果用户尝试立即开始绘图(在图像变得可见的几秒钟内),则触摸开始不会触发。如果用户等待2或3秒钟开始绘图,则所有工作都按预期工作。

我尝试设置delaysContentTouches=NO没有效果。我还实现了touchesShouldBegin:,但只有在调用touchesBegan时才调用此方法(并且绘图正常工作)。我见过的其他解决方案(例如确保用户交互已启用并使用hitTest确保命中发生在我期望的视图中)似乎不适用于我的情况,因为一切都在2-3秒后按预期工作。我还应该注意其他任何时间问题吗?

1 个答案:

答案 0 :(得分:0)

试试这个:

    scrollView.canCancelContentTouches = NO;

如果你有任何手势,你可能需要使用它:

    gestureRecognizer.cancelsTouchesInView = false;