Vì vậy, tôi đang cố gắng thay đổi mục nút thanh điều hướng bên trái trong chế độ xemWillAppear (mục cần được thay đổi qua lại, vì vậy viewDidLoad sẽ không hoạt động). Tôi có mã sau trong chế độ xemWillAppear:thay đổi mục thanh điều hướng theo lập trình trong Swift
// There is a diff 'left bar button item' defined in storyboard. I'm trying to replace it with this new one
var refreshButton = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.Refresh, target: self, action: {})
self.navigationController.navigationItem.leftBarButtonItem = refreshButton
// title and color of nav bar can be successfully changed
self.navigationController.navigationBar.barTintColor = UIColor.greenColor()
self.title = "Search result"
Tôi đã sử dụng trình gỡ lỗi để đảm bảo mọi dòng được thực thi. Nhưng 'leftBarButtonItem' không được cập nhật. Tuy nhiên, công cụ thanh điều hướng đã được cập nhật thành công. Tôi không còn di chuyển nữa. Ý tưởng? Cảm ơn!
Bạn chỉ cần chạm vào móng trên đầu. 'navigationItem.leftBarButtonItem' là con đường để đi. Cảm ơn rất nhiều! –
Bạn có thể không muốn làm điều này trong 'viewWillAppear', nó sẽ được gọi mỗi khi VC được trình bày - một cái gì đó giống như' viewDidLoad' sẽ phù hợp hơn. – Zorayr
@Zorayr: Bạn hoàn toàn đúng. Câu hỏi được đề cập đến 'viewWillAppear' nhưng' viewDidLoad' chắc chắn là một nơi tốt hơn cho mã này. Đã cập nhật mã. –