UIGestureRecognizer方法不断被调用

时间:2015-06-07 01:41:36

标签: ios uigesturerecognizer nstimer

我正在尝试将各种NSTimers与平移手势结合使用,仅在视图中的平移到达视图中的某个点时触发它们,并在超出某个点时使计时器无效。但是,我发现即使我在.Changed状态下触发定时器,也会在用户平移时连续调用手势方法本身。因此,NSTimer持续被触发并且不能正常工作。将NSTimers移到平移手势之外的唯一选择是什么?还是有其他解决方案吗?感谢。

1 个答案:

答案 0 :(得分:0)

  

当用户平移时,手势方法本身被连续调用

这是正确的行为。由您来处理多次调用的手势识别器动作方法取决于您。通过检查手势识别器state,您可以而且应该区分为什么调用动作方法。它将在Begin状态下调用一次,对Changed状态调用多次,在Ended状态调用最后一次。任何手势识别器操作方法都必须考虑到这一点并相应地构造自身,通常作为一个大的switch语句。

相关问题