0

アプリケーションの単純なスワイプ動作をデバッグするのに完全に困惑しました。左方向にスワイプすると、touchesEnded メッセージ メソッドの呼び出しが正しく行われます。

しかし、反対方向にドラッグすると、touchesEnded は呼び出されません。

これがなぜなのか、誰にも手がかりがありますか?viewController クラスのビューとして TapDetectingView を使用しています。IB のこのビューでは、ユーザーの誘導と複数のタッチの両方が有効になっています。

4

2 に答える 2

1

単一のビューで GestureRecognizers と touchesEnded を使用すると、いくつかの問題も発生しました。私の問題は、GestureRecognizers のみを使用しているときに、スワイプまたはタッチを検出できることでした。私がやったことは、 SwipeGestureRecognizers を使用してスワイプを検出し、タップの touchesEnded メソッドを使用することでした。同じビューで TapGestureRecognizers と SwipeGestureRecognizers を使用しても機能しませんでした。

于 2010-06-28T12:34:03.343 に答える
0

touchesEndedスワイプジェスチャでキャプチャしようとしている場合は、を確認してみてくださいtouchesCancelled。スワイプエンドをで処理し、そのメソッド内からtouchesCancelled呼び出します。touchesEnded何らかの理由touchesEndedで、シングルタップと長押しでのみ呼び出され、スワイプでは呼び出されません。良い点は、加速度を計算するために使用するタイムスタンプと座標を取得することです。

于 2011-03-28T23:13:58.583 に答える