
这种方式仅仅适用于只有一个视图并且没有任何其他交互绑定。除了对Cocoa的初学阶段比较有容易理解之外,这种方式真的没有什么特别的优势
首先使用[NSBundle loadNibNamed:owner:options]方法,只带第一个参数。
只要把以下代码放到你控制器(Controller)的 implementation块里面
工作流程如下:创建UIViewController子类的实例时,通过指定初始化方法(initWithNibName:bundle:)传入XIB文件的文件名。当视图控制对象需要使用实例变量view的时候,会查看应用程序包内是否存在相应名称的XIB文件(如果传入的名称是nil,那么UIViewController对象会查找和这个UIViewController子类的类名匹配的XIB文件)。接着,视图控制对象会载入找到的XIB文件。在某些情况下,可以在XXXXViewController.m中强制指定需要载入的XIB文件。例如:
-(id)init
{
self = [super initWithNibName:nil bundle:nil]
if (self) {
UITabBarItem * tbi = [self tabBarItem]
[tbi setTitle:@"Time"]
UIImage * i = [UIImage imageNamed:@"Time.png"]
[tbi setImage:i]
}
return self
}
loadView方法负责完成上述XIB载入过程。UIViewController的默认loadView方法会查找并载入XIB文件,所以在编写通过XIB文件载入视图的UIViewController子类时,不需要覆盖loadView。而在编写通过代码创建视图的UIViewController子类时,就必须覆盖loadView,避免载入XIB文件。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)