【发布时间】:2016-05-12 23:38:32
【问题描述】:
我试图了解视图控制器的生命周期,但我已经阅读了一些关于 awakeFromNib 的相互矛盾的陈述。文档说所有网点都应该设置在awakeFromNib 但I see that it's not always true。 awakeFromNib、prepareForSegue 之间的通话顺序是什么?何时开通?
【问题讨论】:
-
在 UIView 生命周期中使用
awakeFromNib更为常见。但是您要查找的顺序是prepareForSegue、awakeFromNib、viewDidLoad您可以在 awakeFromNib 中访问插座,但您应该阅读需要首先尝试访问视图控制器的视图的警告。另一个问题的发帖人正在感叹所谓的“黑客”。在viewDidLoad中设置视图控制器更安全、更标准。 -
谢谢!因此,如果我们需要完全初始化的视图和插座,我们会使用 [self view] 开始 awakeFromNib
-
那是objective-c。在 swift 中,您可以说类似
print(self.view)的内容,这有点荒谬,这也是我推荐使用viewDidLoad的原因。
标签: ios swift uiviewcontroller lifecycle awakefromnib