0

私のアプリでは、バックグラウンドスクローラーに上方向のスワイプジェスチャレコグナイザーがありますが、どういうわけか機能しません。ここに私のコードがあります

それはviewDidLoadにあります

UISwipeGestureRecognizer *Swipe = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(SwipeRecognizer:)];
Swipe.direction = UISwipeGestureRecognizerDirectionUp;
[backgroundScroller addGestureRecognizer:Swipe];

そしてそれは SwipeRecognizer です:

- (void) SwipeRecognizer:(UISwipeGestureRecognizer *)sender {
    if (sender.direction | UISwipeGestureRecognizerDirectionUp){
        NSLog(@" *** SWIPE UP ***");
    }
}

ただし、ログを取得できません。何か不足していますか?ありがとう。

編集:問題が見つかりました。スクロールが有効になっていないと言ったとき、ジェスチャーを認識できます。しかし、スクロールとジェスチャー認識を同時に行う必要があります。可能ではないですか?

4

2 に答える 2

0

次のように、UIGestureRecognizerDelegateを.hファイルに登録しました。

@interface yourViewController : UIViewController<UIGestureRecognizerDelegate>

また

-(void)SwipeRecognizer:(UISwipeGestureRecognizer *)sender{
  if (sender.direction == UISwipeGestureRecognizerDirectionUp){
    NSLog(@" *** SWIPE UP ***");
  }
}
于 2012-09-03T11:24:28.810 に答える
0

このようにしてみてください。出力が得られない場合は、NSLog(@" *** SwipeRecognizer ***")SwipeRecognizer に触れていないと思います。

- (void) SwipeRecognizer:(UISwipeGestureRecognizer *)sender {
 NSLog(@" *** SwipeRecognizer ***");
if (sender.direction == UISwipeGestureRecognizerDirectionUp){
    NSLog(@" *** SWIPE UP ***");
}
}

お役に立てると思います。

于 2012-09-03T11:52:54.440 に答える