代码之家  ›  专栏  ›  技术社区  ›  Ruslan Pitula

覆盖uinavigationcontroller中的后扫笔势

  •  0
  • Ruslan Pitula  · 技术社区  · 7 年前

    如何覆盖手势以弹出到rootviewcontroller,而不是上一个viewcontroller?

    1 回复  |  直到 7 年前
        1
  •  3
  •   CodeBender    7 年前

    您可以结合以下几点进行此操作:

    将滑动笔势识别器添加到视图控制器:

    enter image description here

    将以下内容添加到视图控制器类中:

    import UIKit
    
    class SwipeBackViewController: UIViewController {
        override func viewDidLoad() {
            super.viewDidLoad()
    
            navigationController?.interactivePopGestureRecognizer?.isEnabled = false
        }
    
        @IBAction func swipeback(_ sender: UISwipeGestureRecognizer) {
            navigationController?.popToRootViewController(animated: true)
        }
    }
    
    • 命令 viewDidLoad 禁用iOS中的默认滑动识别器
    • 然后,与上面添加的滑动识别器关联的操作将为您处理弹出窗口。

    我的答案 here 详细介绍如何禁用识别器,以防您对此有任何疑问。