1、创建视图的两种方法:用代码创建视图,创建XIB文件。如何决定使用哪种方法?参考法则:如果视图没有子视图,就用代码创建;如果有子视图,就通过XIB文件创建。
2、创建视图的时候,视图控制器会调用loadView方法。
3、UIViewController使用XIB文件创建视图的工作流程:创建UIViewController子类的实例时,通过制定初始化方法(initWithNibName:bundle:)传入XIB文件的文件名。当视图控制器实例需要使用实例变量view的时候,会查看应用程序包内是否存在相应名称的XIB文件(如果传入的名称是nil,那么UIViewController对象会查找和这个UIViewController子类的类名匹配的XIB文件)。接着,视图控制器实例会载入找到的XIB文件。
loadView方法负责完成上述XIB载入过程。UIViewController的默认loadView方法会查找并载入XIB文件,所以在编写通过XIB文件载入视图的UIViewController子类时,不要覆盖loadView。而在编写通过代码创建视图的UIViewController子类时,就必须覆盖loadView,避免载入XIB文件。
原文:http://www.cnblogs.com/benbenzhu/p/3595893.html