一旦我添加了自定义栏导航栏按钮项目,我就失去了使用默认功能返回的功能.我希望能够使用“从边缘滑动”返回.
我添加了Edge Pan Gesture Recogniser并将其连接到@IBAction,但是一旦识别出平移手势,解雇动作就会完全发生.
而不是慢慢地跟随我的拇指(如在其他应用程序中看到的),当前视图移出预定义的动画.
如何使用Edge Pan Gesture Recogniser按照我的拇指制作动画?
@IBAction func edgeSwipe(sender: AnyObject) { navigationController?.popViewControllerAnimated(true) }
没有必要添加Edge Pan Gesture Recogniser.按照@beyowulf的建议,我已经能够实现滑动返回功能,其行为与默认系统实现相同 – 视图边缘跟随我的拇指,因为我滑动它以解除它.
所以我从故事板中删除了ScreenEdge Pan Gesture Recogniser,并删除了相关的@IBAction.
我已将我的第一个视图控制器作为interactivePopGestureRecognizer的委托.这是代码:
class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() navigationController?.interactivePopGestureRecognizer?.delegate = self } } extension ViewController: UIGestureRecognizerDelegate { func gestureRecognizerShouldBegin(gestureRecognizer: UIGestureRecognizer) -> Bool { return navigationController?.viewControllers.count > 1 ? true : false } }