当一个nib文件对应两个类,File's Owner的class为CZViewController,Objects下的View对应的为CZView时:
【如果不好理解的话,你可以这么理解:
Main.storyboard关联了ViewController类,而ViewController中有一个UIView,这个UIView对应的是类CZView。】
1. 用在何处?
awakeFromNib:
在CZView.m文件中有效,即只有写在这个类文件中才会调用,写在CZViewController.m文件中时,不会被调用。
viewDidLoad:
写于CZViewController.m文件中,作用同awakeFromNib。
2.什么时候被调用?
a. 当.nib文件被加载的时候,会发送一个awakeFromNib的消息到.nib文件中的每个对象,每个对象都可以定义自己的 awakeFromNib函数来响应这个消息,执行一些必要的操作。也就是说通过nib文件创建view对象是执行了awakeFromNib。
b. 当view对象被加载到内存时,就会执行viewDidLoad,所以不管通过nib文件还是代码的方式创建对象都会执行viewDidLoad。