使用左栏按钮在导航栏上向后滑动手势

时间:2019-07-01 20:28:55

标签: swift uinavigationcontroller uinavigationbar uigesturerecognizer

我希望能够向后滑动视图控制器,该控制器在导航栏上具有左栏按钮。

有很多Stack Overflow帖子解决了这个问题,大多数情况下,他们都说要使用后退按钮项而不是左键按钮,但这不是我要使用的。使用以下代码:

  

self.navigationController?.interactivePopGestureRecognizer?.delegate =   零

允许您在使用向左键的同时保留向后滑动手势,但最终会导致很多随机UI问题。我本以为可以使用平移手势识别器保留向后滑动手势,但是我不确定该怎么做,这就是滑出菜单的作用。

任何帮助都太棒了!

1 个答案:

答案 0 :(得分:1)

尝试将swipeGesture添加到视图中,如下所示:

let swipeRightGesture = UISwipeGestureRecognizer(target: self, action: #selector(ViewController.handleSwipeGesture(_:))

swipeRightGesture.direction = UISwipeGestureRecognizerDirection.right

view.addGestureRecognizer(swipeRightGesture

然后,您的handleSwipeGesture()方法应包含用于弹出ViewController的代码。

如果您想让滑动手势位于NavigationBar上,请添加如下手势:

navigationController.navigationBar.addGestureRecognizer(swipeRightGesture)