Как я могу исправить мою кнопку возврата на панели навигации? - PullRequest
0 голосов
/ 24 марта 2019

Привет. Я пытался изменить кнопку назад в панели навигации моего приложения.Проблема в том, что я вижу изменение, когда загружаю представление дважды.

Я искал ответ несколько раз, но не вижу, чего действительно хочу.На самом деле, я новичок в этом языке, поэтому он труден.

Я пытался поместить следующие строки в метод viewWillAppear и другие *:

nav?.navigationBar.backItem?.title = "Messages"

Результатчто при входе в вид я вижу заголовок кнопки назад как Back .Затем, если я нажму на эту кнопку и снова войду в вид, название изменится так, как я хочу.С другой стороны, я хочу изменить заголовок при первой загрузке представления.

* -> Я пробовал ту же строку в viewDidLoad, также посмотрите, что-нибудь и в viewWillDisappear из предыдущего представления, но ничего не происходит.

1 Ответ

1 голос
/ 17 мая 2019

Вы используете метод кнопки возврата назад в вашем текущем ViewController, это неправильно, потому что ваша панель навигации настроена в прошлом контроллере.Если вы используете раскадровку, попробуйте этот метод в своем родительском контроллере:

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
    let backItem = UIBarButtonItem()
    backItem.title = "Messages"
    navigationItem.backBarButtonItem = backItem
}

Если вы инициируете newController в родительском контроллере, вы должны изменить свой backButton в parentController, например:

// Это действие для любой кнопки с вашим новым контроллером

@objc private func presentDetailViewContorller() {
    let weatherDetailController = WeatherDetailController()
    let navController = NavigationController(rootViewController: weatherDetailController)
    let backItem = UIBarButtonItem()
    backItem.title = "Messages"
    navController.backBarButtonItem = backItem
    self.present(navController, animated: true, completion: nil)
}

Удачи!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...