上下にスワイプすると、単純なジェスチャーを使用していくつかのメソッドが起動する大きなボタンがあります。それを 1 回タップすると、 でTouchUpInside
イベントが発生しlargestButtonSingleTap
ます。私の問題は、大きなボタンをタップして押したままにすると、2 番目に上にスワイプした後、スワイプ ジェスチャが機能しないことです。理由を理解しようとしています。そのボタンには、 DragInside 、 TouchDown 、 DragExit 、 TouchCancel などの他のいくつかのイベントがあります。私はそれらすべてをキャンセルし、空のメソッドのままにしました (largebuttonSingleTap 内のすべてをコメントアウトしました) が、それでも、ボタンが押された場合 > 少し一時停止 > swipeUp > 起動しません。ありがとう
UISwipeGestureRecognizer *upRecognizer;
upRecognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipeUp:)];
[upRecognizer setDirection: UISwipeGestureRecognizerDirectionUp];
[_largestButton addGestureRecognizer:upRecognizer];
- (IBAction)largestButtonSingleTap:(UIButton *)sender
{ //some more code here
[UIView animateWithDuration:0.4 animations:^() {
...
}completion:^(BOOL finished){}];
...
}
-
編集: ここで提案された回答を読んだ後、コードに何か問題があると考えて新しいプロジェクトを開始しましたが、それでも機能しません。ここに新しいプロジェクトがあります http://pastebin.com/yz7NaqUD