awakeFromNib中的插座是什么?

时间:2015-12-17 03:59:02

标签: ios view viewdidload awakefromnib

我看到当从故事板加载视图控制器时,这些事件按顺序发生

  • awakeAfterUsingCoder
  • awakeFromNib
  • viewDidLoad中

在awakeFromNib中,我看到isViewLoaded == false。从 Which should I use, -awakeFromNib or -viewDidLoad?

  

当控制器本身从笔尖取消归档时,将调用awakeFromNib。在创建/取消存档视图时调用viewDidLoad。当控制器的视图存储在单独的nib文件中时,这种区别尤为重要。

awakeFromNib

的规范中
  

nib-loading基础结构将awakeFromNib消息发送到从nib归档重新创建的每个对象,但只有在归档中的所有对象都已加载并初始化之后。当对象收到awakeFromNib消息时,保证已建立所有插座和操作连接

它提到哪个出口和行动?另一件事是awakeAfterUsingCoder在我的情况下被调用了3次!!!

1 个答案:

答案 0 :(得分:0)

这仅适用于笔尖。据我了解,如果我们从故事板中加载ViewControllers,则会在视图和子视图初始化之前调用awakeFromNib。这就是为什么无法保证视图和出口将被初始化的原因。因此,如果您需要具有已建立的插座和操作连接的对象,您需要使用[自我视图]启动awakeFromNib,这就像一个有用的小技巧。