我不知道究竟是什么地方设置了像NavigationBar的tintColor或我的ViewController的标题。它也适用于-init方法和-viewLoad方法。这样做的“最佳实践”或“正确方法”是什么?有哪些优势?
答案 0 :(得分:24)
init
方法(是的,有多个方法)是初始化UIViewController
的地方。因此,这是您为UIViewController
而不是其观点进行处理的地方。
如果您使用nib
加载视图,那么设置任何属性的最佳位置是viewDidLoad
方法。加载nib
后调用此方法。
如果以编程方式设置视图,请使用loadView
方法,然后在此处设置UIControl
属性。
由于系统可以卸载视图以节省内存,因此它将仅保留UIViewController
。由于init
已初始化,因此UIViewController
方法中设置的任何属性都不会再次应用。
答案 1 :(得分:1)
init方法用于初始化viewController,而viewDidLoad方法用于加载你的nib(即你的视图)。因此,当您想要使用viewController执行某些操作时,请使用init方法,当您想对视图执行某些操作时,请使用viewDidLoad。
答案 2 :(得分:0)
正确的位置是在viewDidLoad
中设置它。要了解有关这些方法的更多信息,Apple提供了documentation