ฉันมีกับค่าเริ่มต้นของมันUINavigationController
navigationBar.prefersLargeTitles = true
ฉันกำลังเปลี่ยนที่false
เมื่อฉันpush
เป็นฉากใหม่ช่วยให้เรียกว่า ( DetailsViewController
) viewWillDisappear
โดยการเปลี่ยนมันลงไป
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
navigationController?.navigationBar.prefersLargeTitles = false
}
ตอนนี้ในฉันใช้DetailsViewController
willMove(to parent:)
override func willMove(toParent parent: UIViewController?) {
navigationController?.navigationBar.prefersLargeTitles = true
}
หากต้องการเปลี่ยนกลับเป็นชื่อใหญ่
สังเกตภาพรวมที่แนบมาของวิธีที่iOS 13ทำกับวิธีที่iOS 12ทำอยู่การพิจารณาว่าiOS 12นั้นเป็นพฤติกรรมที่ถูกต้อง
iOS 13 :
iOS 12 :
largeTitleDisplayMode
ถึง . automatic
และคุณควรได้รับการเปลี่ยนแปลงที่ต้องการ
navigationController?.navigationItem.largeTitleDisplayMode = .automatic
.prefersLargeTitles
เลยเมื่อกดตัวควบคุมมุมมองรายละเอียดไปที่กองนำทางมันจะใช้หัวเรื่องเล็ก ๆ โดยอัตโนมัติจากนั้นกลับไปที่จุดใหญ่เมื่อคุณกลับไปที่ตัวควบคุมมุมมองรากเท่าที่ฉันรู้