- 由于xib也是作为资源存在于mainBundle中,所以可以使用mainBundle加载,由于xib可能存在多个view,所以取数组中的一个
NSArray *views = [[NSBundle mainBundle] loadNibNamed:@"xib文件名"
owner:nil
options:nil];
- 使用nib加载,xib文件最终会生成nib
//加载nib文件
UINib *nib = [UINib nibWithNibName:@"xib文件名" bundle:nil];
//取出nib中的多个描述的视图
NSArray *views = [nib instantiateWithOwner:nil options:nil];
- 以上在bundle为空时默认是mainBundle,但是在某些比较复杂的工程中不可以,比如工程嵌套工程那种,因为会有多个bundle,一般这样去创建bundle:
//当前类所在的bundle
[NSBundle bundleForClass:self];
网友评论