2015-05-12 71 views
1

我有一個頁面視圖控制器與五個視圖控制器顯示。滑動手勢識別器沒有觸發?

我曾嘗試添加這些輕掃手勢,但他們沒有被調用?

UISwipeGestureRecognizer *swipeGestureRight = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleRightSwipe:)]; 
swipeGestureRight.numberOfTouchesRequired = 1; 
swipeGestureRight.direction = (UISwipeGestureRecognizerDirectionRight); 
[self.scrollView addGestureRecognizer:swipeGestureRight]; 

UISwipeGestureRecognizer *swipeGestureLeft = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleLeftSwipe:)]; 
swipeGestureLeft.numberOfTouchesRequired = 1; 
swipeGestureLeft.direction = (UISwipeGestureRecognizerDirectionLeft); 
[self.scrollView addGestureRecognizer:swipeGestureLeft]; 

爲什麼沒有這些被觸發,我該怎麼辦呢?我的目標是檢測用戶滑動頁面視圖控制器的方向。

+0

您添加的視圖是否啓用了用戶交互? – AstroCB

回答

0

試試這個

  • 設置你的UIGestureRecognizer

    的代表
  • 實施shouldRecognizeSimultaneouslyWithGestureRecognizer

    -(BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer{ 
    return YES; 
    } 
    
  • 實施shouldReceiveTouch

    - (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch 
    { 
    return YES; 
    } 
    

希望這有助於。讓我知道你是否仍然面臨這個問題。

+0

嗨,感謝您的回答,但我究竟在哪裏實施這兩種方法?我只有1頁面視圖控制器類,我設置委託和數據源像這樣'self.delegate = self; self.dataSource = self;'我試圖將它們添加到我的視圖的上方並且我的方法仍然沒有調用? –

+0

@CoolKatStudios:放在任何地方,但在同一個文件..如果仍然不工作,那麼還有其他問題... –

0

加手勢self.view

[self.view addGestureRecognizer:swipeGestureRight]; 

我希望它會工作

相關問題