2010-06-28 49 views
0

完全难以为我的应用程序调试简单的滑动运动。当我向左滑动时,我正确地获得了touchesEnded消息方法调用。调试touchesEnded仅在单向滑动时未被调用

但是,如果我在另一个方向拖动,touchesEnded不会被调用。

任何人都有线索,为什么这可能是? 我使用TapDetectingView作为viewController类的视图。在IB中为这个视图启用用户联动和多点触摸。

回答

1

我也有一些问题,在一个视图上使用GestureRecognizers和touchesEnded。 我的问题是,我只能使用GestureRecognizers检测滑动或触摸。 我最终做的是使用SwipeGestureRecognizers来检测滑动以及touchesEnded方法的点击。 在同一视图上使用TapGestureRecognizers和SwipeGestureRecognizers无效。

+0

我无法使用新的GestureRecognizer方法,因为我需要计算实际滑动的速度。 – 2010-06-28 17:44:21

+0

好吧,对不起,我不能通过阅读你的帖子找出你的意图。 – samsam 2010-06-29 07:26:56

0

如果您尝试通过滑动手势捕捉touchesEnded,请尝试检查touchesCancelled。我通过touchesCancelled处理我的滑动结束,然后在该方法中调用touchesEnded。出于某种原因,touchesEnded只能通过单击和长按来调用,而不是刷卡。好的是,你得到一个时间戳和坐标来用于计算加速度。

+1

当系统取消触摸时,例如打电话时,会调用touchesCledlled。touchesEnded绝对称为滑动。 – 2011-07-14 01:05:20