0

我的問題與UISwipeGestureRecognizer有關。添加UISwipeGestureRecognizer來切換第一個屏幕的菜單屏幕。這是我的代碼如何移除UISwipeGestureRecognizer來自導航條

UISwipeGestureRecognizer *gestureRecognizernavle = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(toggleMenu)]; 
[gestureRecognizernavle setDirection:(UISwipeGestureRecognizerDirectionLeft)]; 
[self.navigationController.navigationBar addGestureRecognizer:gestureRecognizernavle]; 

但是相同的功能正在調用,而在下一個視圖交換導航欄。 我把下面的代碼去除SwipeGestureRecognizer

if ([self.navigationController respondsToSelector:@selector(interactivePopGestureRecognizer)]) { 
    self.navigationController.interactivePopGestureRecognizer.enabled = NO; 
} 

但這種代碼是行不通的。你可以幫我嗎?

回答

0

使用以下代碼從導航欄中刪除手勢識別器。

while (self.navigationController.navigationBar.gestureRecognizers.count) { 
    [self.navigationController.navigationBar removeGestureRecognizer:[self.navigationController.navigationBar.gestureRecognizers objectAtIndex:0]]; 
} 

它會從導航欄中刪除所有的手勢識別器,如果你想刪除一些,你可以把條件。

享受。 :)