如何从导航栏中删除UISwipeGestureRecognizer

时间:2014-02-05 14:45:26

标签: ios iphone uinavigationcontroller xcode5 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;
}

但是这段代码不起作用。你能帮我吗?

1 个答案:

答案 0 :(得分:0)

使用以下代码从导航栏中删除手势识别器。

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

它会从导航栏中删除所有手势识别器,如果你想删除一些手势识别器,你可以设置条件。

享受。 :)