我看到,当从情节提要加载视图控制器时,这些事件按顺序发生。
在awakeFromNib中,我看到了isViewLoaded == false。来自Which should I use, -awakeFromNib or -viewDidLoad?
当控制器本身从nib中解除存档时,将调用awakeFromNib。在创建/未存档视图时调用viewDidLoad。当控制器的视图存储在单独的nib文件中时,这种区别尤其重要。
在awakeFromNib规范中
nib加载基础结构向从nib存档重新创建的每个对象发送一条awakeFromNib消息,但只在加载和初始化归档中的所有对象之后。当一个对象接收到awakeFromNib消息时,保证它的所有出口和动作连接都已经建立了。
那么它所提到的是什么渠道和行动呢?另一件事是,在我的情况下,awakeAfterUsingCoder被调用3次!
发布于 2016-05-12 14:26:37
这只适用于尼克斯。正如我所理解的,如果我们从故事情节提要加载ViewControllers,则在视图和子视图初始化之前调用awakeFromNib。这就是为什么不能保证视图和出口会被初始化。所以,如果你需要有固定插座和动作连接的对象,你需要用自我视图启动awakeFromNib,这就像一个小技巧,很有帮助。
https://stackoverflow.com/questions/34326378
复制相似问题