0

我在我的scrollView上設置了一個UITapGesture,但是因爲我無法使用我的scrollView中的按鈕...所有它讀取的是scrollView的手勢動作。Objective C:手勢問題

我怎麼能解決這個問題?

我有這樣的代碼:

UIGestureRecognizer *tapIt = [[ UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTap:)]; 
    imgTap = (UITapGestureRecognizer *)tapIt; 
    imgTap.numberOfTapsRequired = 1; 
    imgTap.numberOfTouchesRequired = 1; 
    [scrollView addGestureRecognizer:imgTap]; 
+0

如果你補充一點水龍頭識別您的滾動視圖的內容查看,而不是直接滾動視圖會發生什麼?這會工作嗎? – Altealice 2012-02-21 10:57:26

回答

3

儘量避免觸摸從手勢代表到達按鈕:

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch{ 
if ([touch.view isDescendantOfView:myButton]) { 
    return NO; 
} 

return YES; 

}

+0

無法正常工作。我嘗試過這個。 – SeongHo 2012-02-21 10:52:49

+0

我確定它可以工作,因爲我已經使用它了。你確定你已經將自己設置爲手勢識別器的代表嗎? – ale84 2012-02-21 11:27:21

+0

謝謝!它現在正在工作!我忘了設置代表!你救了我!!今天是我的最後期限呵呵!再次感謝! – SeongHo 2012-02-21 11:30:10

0

我相信你可以在你的姿態,沒有固定的cancelsTouchesInView屬性。也應該有一些方法來忽略某些視圖中的手勢。