UITableViewCell初始化的两种方式 (iOS开发篇)

本文介绍了在iOS开发中初始化UITableViewCell的两种主要方式:不注册细胞的dequeueReusableCellWithIdentifier方法,需要进行nil判断;另一种是在tableView viewDidLoad时注册nib或代码创建的细胞,然后在cellForRowAtIndexPath中直接使用dequeueReusableCellWithIdentifier:forIndexPath:,无需空判断。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 UITableViewCell的两种初始化方式(dequeueReusableCellWithIdentifier):

1,不注册cell的方式:

      UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"cellID"];

      if (cell == nil) {

           cell =[ [UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"cellID"]]; }

      return cell;

注意⚠️此方法要对cell进行判断if (cell == nil)。  在iOS6之前都是用这个方法初始化cell。

2,注册的方式:

  2.1 注册nib文件:通过xib文件创建的UITableViewCell

                                 需要在tableView ViewDidLoad的时候registerNib

        [tableView registerNib:[UINib nibWithNibName:@"CustomCell(cell类名)" bundle:nil] forCellReuseIdentifier:kCellIdentify];

                                 在cellForRowAtIndexPath里就不需要对cell是否为空进行判断

       [CustomCell *cell = [tableView dequeueReusableCellWithIdentifier:kCellIdentify forIndexPath:indexPath];

  2.2 注册代码创建文件:

                                在tableView ViewDidLoad的时候

        [tableView registerClass:[CustomCell(cell类名) class] forCellReuseIdentifier:kCellIdentify];

                                在cellForRowAtIndexPath里就不需要对cell是否为空进行判断

        [CustomCell *cell = [tableView dequeueReusableCellWithIdentifier:kCellIdentify forIndexPath:indexPath];

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值