awakeFromNib和viewDidLoad的区别(转)

 awakeFromNib 

当.nib文件被加载的时候,会发送一个awakeFromNib的消息到.nib文件中的每个对象,每个对象都可以定义自己的awakeFromNib函数来响应这个消息,执行一些必要的操作。也就是说通过nib文件创建view对象是执行awakeFromNib 

viewDidLoad 
当view对象被加载到内存是就会执行viewDidLoad,所以不管通过nib文件还是代码的方式创建对象都会执行viewDidLoad 

 
http://iphone.group.iteye.com/group/topic/14673
 
 
当.nib文件被加载的时候,会发送一个awakeFromNib的消息到.nib文件中的每个对象,每个对象都可以定义自己的awakeFromNib函数来响应这个消息,执行一些必要的操作。也就是说只有通过.nib文件创建view对象时才会执行awakeFromNib 。一般的,当IB加载的时候,我们会通过调用自定义对象的awakeFromNib函数,来对界面进行补充。 选择的时机:当你需要写一个UIView的子类并且想在load nib的时候做一些初始化工作的时候很有用。bundle在load nib后会给每个view对象发送一个awakeFromNib消息。
 
viewDidLoad当view对象被加载到内存时就会执行viewDidLoad,所以不管是通过.nib文件还是以代码的方式创建对象都会执行viewDidLoad。

你可能感兴趣的:(awake)