2013-01-24 113 views
2

在我的应用我有这样的代码:IOS:承认轻扫手势

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)recognizer shouldReceiveTouch:(UITouch *)touch 
{ 

    if ([touch.view isKindOfClass:[UIScrollView class]]){ 
     return YES; 
    } 

    else return NO; 
} 

在此我控制我的触摸里面滚动型或没有,但现在我要检查,如果触摸是一个简单的触摸或者是轻扫手势,有没有办法检测到它? 感谢

+0

只需将UISwipeGestureRecognizer添加到您的视图中,并且每当执行创建识别器时使用的操作, – Moxy

回答

9

你上面写的方法是UIGestureRecognizerDelegate。这是当您在其上放置一个观察者特定的手势,被检测到的委托方法将被调用。

为了识别SWIP Ë姿态,你必须添加手势识别查看上要如下检测:

UISwipeGestureRecognizer *recognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipeFrom:)]; 
[recognizer setDirection:(UISwipeGestureRecognizerDirectionRight)]; 
[[self view] addGestureRecognizer:recognizer]; 
[recognizer release]; 

你可以得到的姿态检测方法handleSwipeForm:

如果你想获得上述委托到被调用随后也加入这一行,

recognizer.delegate = self; 
0

使用UISwipeGestureRecognizer检测滑动手势(可以设置刷卡方向:UISwipeGestureRecognizer.direction

而一个UITapGestureRecognizer检测抽头(所需数量的抽头UITapGestureRecognizer.numberOfTapsRequired套触发识别器(如双水龙头)

0

你必须使用UISwipeGestureRecognizer以检测滑动手势。

UISwipeGestureRecognizer *swipeGest= [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(SwipeRecognizer:)]; 
[swipeGest setDirection:(UISwipeGestureRecognizerDirectionRight)]; 
[[self view] addGestureRecognizer:swipeGest]; 
swipeGest.delegate = self; 

setDirection用于设置滑动检测方向。

- (void)SwipeRecognizer:(UIGestureRecognizer *)gestureRecognizer 
{ 
} 

这里我们将在检测到滑动手势后编写函数。