若使用nib,使用 registerNib: 注册,dequeue时会调用 cell 的 -(void)awakeFromNib
不使用nib,使用 registerClass: 注册, dequeue时会调用 cell 的 - (id)initWithStyle:withReuseableCellIdentifier:
使用dequeueReuseableCellWithIdentifier:可不注册,但是必须对获取回来的cell进行判断是否为空(判空代码如上),若为空则手动创建新的cell;
使用dequeueReuseableCellWithIdentifier:forIndexPath:必须注册,但返回的cell可省略空值判断
的步骤。
////////////
代码写就重新init函数
- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
{
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if (self) {
// 初始化子视图
[self initLayout];
}return self;
}
///////////xib写的话就是绑定xib。并用
staticNSString *identifier=@"tg";59YYtgcell *cell=[tableView dequeueReusableCellWithIdentifier:identifier];60if(cell==nil) {61//如何让创建的cell加个戳62//对于加载的xib文件,可以到xib视图的属性选择器中进行设置63cell=[[[NSBundle mainBundle]loadNibNamed:@"tgcell"owner:nil options:nil]firstObject];64NSLog(@"创建了一个cell");65}6
https://www.cnblogs.com/soley/p/5418544.html
网友评论