Ho un UINavigationControllervalore predefinito di esso navigationBar.prefersLargeTitles = true.
Lo sto passando a falsequando sono push in una nuova scena che consente di chiamarlo ( DetailsViewController), cambiandolo in viewWillDisappear.
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
navigationController?.navigationBar.prefersLargeTitles = false
}
Ora DetailsViewControllersto usando willMove(to parent:).
override func willMove(toParent parent: UIViewController?) {
navigationController?.navigationBar.prefersLargeTitles = true
}
Per tornare a titoli di grandi dimensioni.
Osserva le istantanee allegate di come iOS 13 lo fa con come iOS 12 lo sta facendo, considerando che iOS 12 è il comportamento corretto.
iOS 13 :
iOS 12 :
largeTitleDisplayModeper . automatice dovresti ottenere la transizione desiderata.
navigationController?.navigationItem.largeTitleDisplayMode = .automatic


.prefersLargeTitlesnulla quando si spinge un controller di visualizzazione dettagli nello stack di navigazione, utilizzerà automaticamente un titolo piccolo e poi tornerà a quello grande una volta tornato al controller di visualizzazione radice, per quanto ne so