2011-05-09 53 views

回答

15

您可以看看SimpleGestureRecognizers示例項目。

http://developer.apple.com/library/ios/#samplecode/SimpleGestureRecognizers/Introduction/Intro.html

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

    // Disallow recognition of tap gestures in the button. 
    if ((touch.view == button) && (gestureRecognizer == tapRecognizer)) { 
     return NO; 
    } 
    return YES; 
} 
+0

的gestureRecognizer.view被列爲總體視圖,而不是工具欄/按鈕。 – smokingoyster 2011-05-11 14:02:45

+0

我更新了這個例子。 – jaminguy 2011-05-11 18:42:46

+3

此if語句用於忽略工具欄中的每個按鈕。花了我一分鐘找到它,認爲它可能值得添加。如果([touch.view isDescendantOfView:_toolbar]) – smokingoyster 2011-05-12 17:23:27

0

在夫特:

func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldReceive touch: UITouch) -> Bool { 
    if touch.view is UIButton { 
     return false 
    } 
    return true 
}