initWithNibName 和 loadNibNamed 的区别和联系

联系

可以使用此方法加载用户界面(xib文件)到我们的代码中,这样,可以通过操作这个加载进来的(xib)对象,来操作xib文件内容。

区别

1.集成类不一样

initWithNibName要加载的xib的类为我们定义的视图控制器类
loadNibNamed要加载的xib的类为NSOjbect

2.加载方式不同

initWithNibName方法:是延迟加载,这个View上的控件是 nil 的,只有到 需要显示时,才会不是 nil
loadNibNamed方法:即时加载,用该方法加载的xib对象中的各个元素都已经存在。

获取想要的 view

NSArray* nib = [[NSBundle mainBundle] loadNibNamed/@"CustomCell" owner:self options:nil];
for(id item in nib) {

    if([is isKindOfClass:[youview class]]) {

    //找到了你自己需要得view
    }
}