3

最初にドラッグ (パン) ジェスチャを認識し、次にユーザーが指を保持し続けると、別の「ホールド」イベントを認識するためのヒントがあるかどうか疑問に思いましたか?

したがって、私が求めている効果は、通常のパン イベントが実行され、移動が終了すると、ユーザーが指を保持すると、少し遅れて別のイベントが発生することです。このイベントは、指が離されるまで発生し続ける必要があります。それが理にかなっていることを願っています。

と組み合わせUIPanGestureRecognizerてみましUILongPressGestureRecognizerたが、長押しイベントはタップ、ホールド、スワイプのほうが多いです。私は物事を逆にしたい。通常のタップイベントも試しましたが、ファインダーが画面から削除されるまで発生しませんか?

ありがとう

4

1 に答える 1

2

高度な認識機能をエミュレートするには、タイマーまたは dispatch_after を使用する必要がある場合があります。

-(void)panGesture:(UIPanGestureRecognizer *)gesture;
{

    if ([gesture state] == UIGestureRecognizerStateBegan || [gesture state] == UIGestureRecognizerStateChanged) {
        fireEvent = YES;
        //Alternatively, use display_after
        [self performSelector:@selector(fireAnotherEventIfNecessary) withObject:nil afterDelay:2];
    } else {
        fireEvent = NO;
    }
}

-(void)fireAnotherEventIfNecessary {

    if (fireEvent) {
        // Fire Event
    }
}
于 2012-11-07T02:39:38.130 に答える