Swift中,不动UI的情况下,如何重写导航的返回按钮的点击事件?
时间: 2024-03-08 07:50:05 浏览: 15
在 Swift 中,可以通过重写导航控制器的 `UINavigationController` 类的 `viewDidLoad()` 方法来实现重写导航栏返回按钮的点击事件。具体实现如下:
```swift
override func viewDidLoad() {
super.viewDidLoad()
// 隐藏系统返回按钮
self.navigationItem.hidesBackButton = true
// 自定义导航栏返回按钮
let backButton = UIBarButtonItem(title: "返回", style: .plain, target: self, action: #selector(backButtonTapped))
self.navigationItem.leftBarButtonItem = backButton
}
@objc func backButtonTapped() {
// 在这里实现自定义的返回按钮点击事件逻辑
// ...
// 调用系统的返回方法
self.navigationController?.popViewController(animated: true)
}
```
在上面的代码中,首先隐藏了系统的返回按钮,然后创建了一个自定义的导航栏返回按钮,并设置了点击事件 `backButtonTapped()`。在这个方法中,可以实现自定义的返回按钮点击事件逻辑,并最后调用系统的返回方法 `popViewController(animated: true)`。