xib 的创建
1.与控制器相关联的 xib
控制器默认的构造函数直接从与其同名的 xib 文件中加载视图.
方法:
- 在创建控制器时,勾选 Also creat XIB file.
- 创建一个与控制器同名的 xib 文件.在 xib 文件中,将 File's Owner 的类指定为要与之关联的控制器的类,并将 xib 中的视图的 Referencing Outlet 与 File's Owner 连线.
2.与视图相关联的 xib
UIView 类在创建时不能勾选Also creat XIB file.
方法:
1> 创建一个与视图同名的 xib 文件,在 xib 文件中,将 xib 中视图的类指定为要与之关联的视图的类
2> 在视图类的.h文件中生命一个返回值是 instancetype 的类方法,在 .m 文件中实现这个方法,代码如下:
//"DemoView"是 xib 文件名
UINib *nib = [UINib nibWithNibName:@"DemoView" bundle:nil];
return [nib instantiateWithOwner:nil options:nil].lastObject;
3 使用这个类方法创建视图
3.与 tableViewCell、collectionViewCell、headerView、footerView 相关联的 xib
方法:
- 在创建 tableViewCell、collectionViewCell时,勾选 Also creat XIB file.
- 1> 创建一个与tableViewCell、collectionViewCell、headerView、footerView 同名的 xib 文件,将 xib 文件中视图的类指定为要与之关联的tableViewCell、collectionViewCell、headerView、footerView 的类.
2> 通过 xib 文件注册可重用 cell 或headerView、footerView,用如下方法
- (void)registerNib:(nullable UINib *)nib forCellReuseIdentifier:(NSString *)identifier
- (void)registerNib:(nullable UINib *)nib forHeaderFooterViewReuseIdentifier:(NSString *)identifier
网友评论