UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:
CellTableIdentifier];意思是定义一个cell,在tableview中的可重用队列中寻找有CellTableIdentifier标识的UITableViewCell,以进行重用
if (cell == nil) {则我们需要分配空间并初始化一个cell,而且需要关联reuseIdentifier,以便后面重用的时候能够根据Identifier找到这个cell,若cell不为nil,则重用成功,并可return此cell。
cell = [[[UITableViewCell alloc]
initWithStyle:UITableViewCellStyleDefault
reuseIdentifier:CellTableIdentifier] autorelease];
}
- (void)registerNib:(UINib *)nib forCellReuseIdentifier:(NSString *)identifier
或者
//cell 从队列中获取得到,不会为nil
(1)自定义cell
1.注册
[self.tableView registerClass:[xxxxCell class] forCellReuseIdentifier:@"cell"];
xxxxCell *cell = [tableView dequeueReusableCellWithIdentifier:@"cell" forIndexPath:indexPath];
2.不注册
xxxxCell *cell=[tableView dequeueReusableCellWithIdentifier:@"cell"];
if (cell==nil) {
cell=[[xxxxCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"cell"];
(2)自定义cellXib注册
1.注册
[tableView registerNib:[UINib nibWithNibName:@"xxxxViewCell" bundle:nil] forCellReuseIdentifier:@"Cell"];
xxxxCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Cell" forIndexPath:indexPath];
2.不注册
xxxxCell *cell=[tableView dequeueReusableCellWithIdentifier:@"cell"];
if (cell == nil) {
cell=[[[NSBundle mainBundle]loadNibNamed:@“xxxxCell" owner:self options:nil]lastObject];
}