Переход к большому заголовку из маленького заголовка на мгновение показывает маленький заголовок в контроллере вида назначения. - PullRequest
0 голосов
/ 11 сентября 2018

У меня есть два контроллера представления в контроллере навигации.Корневой контроллер представления имеет маленький заголовок, а следующий контроллер представления имеет большой заголовок.

Когда я нажимаю следующий контроллер представления, я устанавливаю

self.navigationItem.largeTitleDisplayMode = .always

В viewDidLoad следующего контроллера представления.Проблема в том, что при переходе он на мгновение показывает заголовок как маленький, а затем заголовок становится большим.Но я просто хочу показать большой титул.Я попытался установить текст заголовка в ViewDidAppear, он вроде работает, но заголовок появляется поздно.Я тоже этого не хочу.

Ответы [ 2 ]

0 голосов
/ 26 июня 2019

Была такая же проблема, я сделал это:

В ВК 1:

override func viewWillAppear(_ animated: Bool) {
    super.viewWillAppear(animated)
    navigationItem.largeTitleDisplayMode = .never
}

В ВК 2:

override func viewWillAppear(_ animated: Bool) {
    super.viewWillAppear(animated)
    navigationItem.largeTitleDisplayMode = .always
    navigationController?.navigationBar.prefersLargeTitles = true
}
0 голосов
/ 11 сентября 2018

Скажем, вы делаете что-то подобное в vc1

let vc2 = SomeVC()
vc2.navigationItem.largeTitleDisplayMode = .always
self.navigationController.pushViewController(vc2, animated: true)

Поэтому попробуйте установить свойство, прежде чем нажимать viewcontroller

...