我想知道awakeFromNib()和viewDidLoad()之间的关键区别,以更清楚地了解它们的工作原理。请问有人能解释一下吗?
我想知道awakeFromNib()和viewDidLoad()之间的关键区别,以更清楚地了解它们的工作原理。请问有人能解释一下吗?
从苹果文档中得知:
awakeFromNib
:
nib加载基础设施会向从xib归档文件中重新创建的每个对象发送一个awakeFromNib消息,但是只有在归档文件中的所有对象都被加载和初始化后才会发送此消息。当一个对象接收到awakeFromNib消息时,保证它已经拥有所有的插座连接(outlet)和动作连接(action)。
viewDidLoad
:
该方法在视图控制器将其视图层次结构加载到内存后调用。无论视图层次结构是从nib文件加载还是在loadView方法中以编程方式创建,都会调用此方法。通常,您会重写此方法来对从nib文件中加载的视图执行其他初始化工作。
awakeFromNib:
可能不会被调用。 - zaph