我的应用程序使用NavigationController。在后退按钮按下我将检查是否已满足某个条件。如果不是,我想警告用户他们所做的工作将不会被保存。
我正在尝试使用viewWillDisappear
函数来执行逻辑等。
但是,如果用户希望取消导航,我不确定如何停止导航。
答案 0 :(得分:1)
在viewcontroller的viewDidLoad(..)
方法中提供您的左侧栏按钮项。无论你将什么逻辑放在leftBarButton的选择器方法中,你的左键都会像那样工作。
前:
override func viewDidLoad(){
let backButton = UIBarButtonItem(title: "Back", style: .plain, target: self, action: #selector(self.backButtonAction(_:)))
self.navigationItem.leftBarButtonItem = backButton
}
@objc func backButtonAction(_ sender: UIBarButtonItem){
// Your logic for navigation
}