-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
#pragma mark 重用机制
//0.创建标识符
static NSString *cellID =@"tttt";
//1.从重用队列中获取cell
UITableViewCell *cell = [tableView
dequeueReusableCellWithIdentifier:cellID];
//2.判断是否存在,如果不存在,则创建
if (cell == nil) {
cell = [[UITableViewCellalloc]initWithStyle:UITableViewCellStyleSubtitlereuseIdentifier:cellID];
}
//3.使用
cell.textLabel.text =_biggerArrays[indexPath.section][indexPath.row];
return cell;
}
=======================================
//写纯代码注册cell
// [self.tableView registerClass:[UITableViewCell class] forCellReuseIdentifier:reuseID];
//可视化storyBoard不需要注册
//可视化 .Xib还是需要注册,注册的是Nib文件,Nib文件就是.Xib文件编译之后的文件。
=======================================
注册步骤:
第一步:设置重用标识符
//1.static修饰的语句,只运行一次,并且不可以被其他文件访问到。(防止干扰其他文件对重用标识符的重复使用产生错误)
//2.const修饰的内容在程序运行期间不可以被修改,保证了cell从重用池里面取出来的是正确对象。
static NSString *const reuseID =@"customReuseIdentifier";
第二步:注册Cell类或者Cell .Nib文件
//有多少个自定义cell就注册几个,这里相当于把这个自定义cell的类放入重用池中。
1、[self.tableViewregisterClass:[MYTableViewCellclass] forCellReuseIdentifier:reuseID];
2、[self.tableViewregisterNib:[UINibnibWithNibName:@"HeadCell"bundle:nil]forCellReuseIdentifier:cell_ID];
//bundle 包的意思:就是我们做完一个App最终要传到AppStore上的一个包,还有不用担心的是,我们上传的这个包,别人下载下来,并不会得到我们的.m/.h文件。
//bundle : nil 就是默认为当前主包mainBundle
第三步:从重用池中直接取并返回
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
CustomCell *cell = [tableViewdequeueReusableCellWithIdentifier:reuseIDforIndexPath:indexPath];
return cell;
}