cell提前注冊兩種方式:
* tableView registerNib:(nullable UINib *) forCellReuseIdentifier:(nonnull NSString *)
* tableView registerClass:(nullable Class) forCellReuseIdentifier:(nonnull NSString *)
1. 系統(tǒng)cell和自定義代碼cell
//提前注冊
[self.tableView registerClass:[UITableViewCell class] forCellReuseIdentifier:@"cell"];
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"cell" forIndexPath:indexPath];
//不提前注冊
UITableViewCell *cell=[tableView dequeueReusableCellWithIdentifier:@"cell"];
if (cell==nil) {
cell=[[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"cell"];
}
2. 自定義cellXib注冊
//提前注冊
[self.tableView registerNib:[UINib nibWithNibName:@"xxxxViewCell" bundle:nil] forCellReuseIdentifier:@"Cell"];
xxxxCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Cell" forIndexPath:indexPath];
//不提前注冊
xxxxCell *cell=[tableView dequeueReusableCellWithIdentifier:@"cell"];
if (cell == nil) {
cell=[[[NSBundle mainBundle]loadNibNamed:@“xxxxCell" owner:self options:nil]lastObject];
}
轉(zhuǎn)載自:https://blog.csdn.net/zomfice/article/details/51767973