iOS侧滑返回(swift)

iOS中原本是默认就存在侧滑返回的,但是这个侧滑返回有一点不完美。现在很多人都是用单手(右手)来玩手机的,而且一般是用右手的拇指去实现侧滑返回这个功能。但苹果原生的侧滑返回是必须在靠近屏幕的左侧边缘侧滑才能实现,正常的话拇指触碰到手机的左侧边缘很不方便,所以为了更好的用户体验,最好是让用户从任何位置都能实现这个操作,这样我们就可以在自定义的BaseViewController中去做些处理,然后其他的控制器都继承于这个就可以了。

override func viewDidLoad() {
        super.viewDidLoad()
        view.backgroundColor = UIColor.white
        let target = self.navigationController?.interactivePopGestureRecognizer!.delegate
        let pan = UIPanGestureRecognizer(target: target, action: ("handleNavigationTransition:"))
        pan.delegate = self
        self.view.addGestureRecognizer(pan)
        self.navigationController?.interactivePopGestureRecognizer!.isEnabled = true
 }
   
 func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool {
        if childViewControllers.count == 1 {
            return false
        }else{
            return true
        }
    }

你可能感兴趣的:(iOS侧滑返回(swift))