Изменить заголовок контроллера навигации со второго контроллера просмотра?

У меня есть контроллер вида, в который встроен контроллер навигации.

С этого вида контроллера я могу изменить заголовок панели навигации с navigationItem.title = "title",

Кроме того, у меня есть еще один контроллер табличного представления, и я хочу обновить плитку навигационного контроллера также отсюда, этот контроллер табличного представления действует как меню выдвижения для первого контроллера представления.

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

Я пробовал эти коды:ViewController().navigationItem.title = "secondTitle"

Я также попытался включить процесс изменения заголовка в первом контроллере в функцию и создать такой пример:ViewController().updateNavTitle()Также попытался создать переходы, но безрезультатно.

1 ответ

Создать String переменная в вашем первом классе и получить доступ к этому свойству в контроллере Slide Out и и обновить его. Теперь в вашем первом контроллере в методе viewWillAppear обновите заголовок, как показано ниже.

override func viewWillAppear(animated: Bool) {

      super.viewWillAppear(animated)
      if self.updatedTitle != nil {
      self.navigationItem.title = self.updatedTitle//Create this String variable.
      }
}
Другие вопросы по тегам