我可以从自定义视图类更改NavigationController设置吗?
import UIKit
class TutorialView: UIView {
init() {
//change navigation controller settings
//ex: navigationController.navigationItem.title = "hoge"
}
}
我知道这一点。然而,我的应用程序rootViewController是TabBarController。TabBarController上的NavigationController。
(window?.rootViewController as? UINavigationController)?.navigationItem.title = "hoge"
更改NavigationController设置的最佳方式是什么?
ViewControllers
的viewDidLoad
方法是更改NavigationController的任何属性的正确位置,IMO,只要它们特定于该视图。其中包括标题颜色、大标题显示设置等。。。如果您想更改/添加NavigationController方法,比如实现一个新的pushViewController方法,那么我建议您将UINavigationController
子类化并覆盖必要的属性/方法。如果您想更改导航栏的外观,可以通过AppDelegate进行更改,请参阅此。