Đã kiểm tra giải pháp và hoạt động trong Swift 5
Dưới đây tôi đặt một vài giải pháp cho các trường hợp khác nhau:
1. Xóa văn bản khỏi nút quay lại
Giải pháp tốt nhất để xóa văn bản khỏi nút quay lại là thêm vào viewDidLoad ():
navigationItem.backBarButtonItem = UIBarButtonItem()
2. Đặt văn bản riêng trên nút quay lại
Trong trường hợp bạn muốn đặt tiêu đề của riêng mình, hãy thực hiện bằng cách đặt tiêu đề của backButton:
let backButton = UIBarButtonItem()
backButton.title = "My Title"
navigationItem.backBarButtonItem = backItem
3. Nút quay lại trống trên tất cả các VC
Nếu bạn muốn tạo kiểu chung trong toàn bộ ứng dụng - chỉ cần quay lại mũi tên mà không có văn bản, hãy tạo VC cơ sở cho tất cả Bộ điều khiển xem của bạn:
class BaseViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
navigationItem.backBarButtonItem = UIBarButtonItem()
}
}
Giải pháp được trình bày ở trên cho phép bạn tùy chỉnh nút quay lại trong tương lai nếu bạn muốn tạo một số ngoại lệ sau này, bằng cách thêm biến bổ sung và ghi đè nó trong ViewContoder cụ thể, f.ex:
class BaseViewController: UIViewController {
var customBackButtonTitle: String?
override func viewDidLoad() {
super.viewDidLoad()
var backButton = UIBarButtonItem()
if let text = customBackButtonTitle {
backButton.title = text
}
navigationItem.backBarButtonItem = backButton
}
}