若要使用UITableView的复用机制,就必须在初始化UITableView的时候就注册Cell或Header/Footer并制定其Identifier,注册的方式分两种:registerClass和registerNib,具体怎么用呢:
1.如果你的TableViewCell是只有代码没有xib:
[_mTableView registerClass:[HomeTwoBtnCell class] forCellReuseIdentifier:@"HOME_TABLEVIEW_ID_S1"];
2.如果TableViewCell是代码加xib的话有以下两种方式注册:
(1)除了上面那句代码,还需在Cell的.m文件中实现:initWithStyle并自己加载Nib:
<pre name="code" class="objc">- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier {
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if(self) {
NSArray *nibArray = [[NSBundle mainBundle] loadNibNamed:@"HomeTwoBtnCell" owner:nil options:nil];
self = [nibArray lastObject];
[self initCell];
}
return self;
}
(2).直接使用registerNib进行注册
[_mTableView registerNib:[UINib nibWithNibName:@"ComplaintHandingCell" bundle:nil] forCellReuseIdentifier:ComplaintHandingCellIdentifier];