2010-06-28 48 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