自定义UIViewController与xib文件的关系分析

xib一定要显示加载,如果与控制器同名系统会自动隐式加载。

用Xcode的模板加入UIViewController sub class时,勾选with xib for interface项会随之一起生成三个后缀名不同(.h .m .xib)的同名文件。

之后在工程项目中若是用这个自定义的UIViewController,可以采用以下两种方式定义:

CustomViewController *customViewController = [[CustomViewController alloc] initWithNibName:nil bundle:nil];

CustomViewController *customViewController = [[CustomViewController alloc] init];

因为相应的xib文件是与自定义的视图控制器同名的,所以都能够正确加载。即使是简单初始化init或是给initWithNibName:方法传参数nil都是可行的。

但是如果xib文件名与其类的名字不同,则一定要显式提供xib正确的文件名。

牢记:通过Nib文件加载viewcontroller的各种UI控件时时,在viewDidLoad函数里,viewController的控件才能使用。在viewcontroller的构造函数里,nib里的控件都还没有完成链接构造呢。

我的话费充值店-各种面额
电信100元仅售98.60 

联通100仅售99.00
移动100仅售99.30

猜你喜欢

转载自wenzongliang.iteye.com/blog/1631156