如何从导航栏中删除 UISwipeGestureRecognizer
Posted
技术标签:
【中文标题】如何从导航栏中删除 UISwipeGestureRecognizer【英文标题】:How to remove UISwipeGestureRecognizer From Navigation bar 【发布时间】:2014-02-05 14:45:26 【问题描述】:我的问题与 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】:使用以下代码从导航栏中删除手势识别器。
while (self.navigationController.navigationBar.gestureRecognizers.count)
[self.navigationController.navigationBar removeGestureRecognizer:[self.navigationController.navigationBar.gestureRecognizers objectAtIndex:0]];
它将从导航栏中删除所有手势识别器,如果您想删除一些,您可以设置条件。
享受。 :)
【讨论】:
以上是关于如何从导航栏中删除 UISwipeGestureRecognizer的主要内容,如果未能解决你的问题,请参考以下文章