此问题适用于不使用nib文件的程序化应用程序,其中故事板已被删除,并且创建窗口并在应用程序委托中为其提供根视图。一些接受的答案,我在这里读的出现与苹果公司的文件有冲突,所以告诉我,如果这是正确的:程序化UI:不要调用super.loadView,而是调用super.viewDidLoad?
当创建一个UIViewController
,创造它的基础的方法应该放在loadView
没有调用super.loadView
:
override func loadView() {
// build something
buildSomething()
}
,以及使最后的润色的方法应该放在viewDidLoad
与调用super.viewDidLoad
:
// view did load
override func viewDidLoad() {
super.viewDidLoad()
// arrange something that requires it be built first
arrangeSomething()
}
还是应该super.viewDidLoad()
只在特殊情况下被调用?如果是这样,他们是什么?
“有些......与Apple文档有冲突......” ...除非您编辑您的问题以包含对它们的引用,否则我们显然无法评论这些问题。 – Rob