乐趣区

关于ios:ios-一个xib添加多个cell

ios 一个 xib 注册多个 cell

一、创立多个 Cell

首次应用 xib 创立 UITableviewCell 的时候,我都是一个 xib 文件里,只创立一个 Cell, 在理论业务中,往往都是一个列表中须要用到多个不同的 Cell 款式,这就须要创立 N 个.h .m .xib 文件。而且这些.m 中的实现还差不多

1、在一个 xib 中创立多个 Cell

先和一般创立 xibCell 一样,在 xib 中选中右边那个 Cell,copy(command + c) 或者在拖一个 UITableViewCell 下来,而后 paste(command + v),.xib 中就多个 Cell 了。

2、设置 Restoration ID

为每个 Cell 设置一个惟一的 Restoration ID,

二、应用

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
    // 在重用队列中 找到正确的 Cell 重复使用 Cell
    SpotStrategyParamCell *cell = [tableView dequeueReusableCellWithIdentifier:@"CirculationOptionalID"];
    if (!cell) {
        // 从 mainBundle 中加载资源
        cell = [[[NSBundle mainBundle] loadNibNamed:@"SpotStrategyParamCell" owner:self options:nil] objectAtIndex:2];
     }
    cell.selectionStyle = UITableViewCellSelectionStyleNone;
    return cell;
}

三、属性问题

新拖进来三个 cell 下面放好控件增加过束缚后,开始拖拽管制为属性,可是每次关联的都是第一个 cell,最初查看发现是因为新的几个 cell 是从控件库中拖拽进去的没有和某个类关联,也就是相当于是一个空的 cell 跟那个都无关,所以无论怎么拖拽都是关联的第一个 cell。

  1. 点击 cell 查看属性查看器通过属性查看器和 cell 某个控件关联,而后在拖拽为属性。
  2. 提前在.h 文件中定义好属性,间接和控件关联,如果有多个 cell 会有抉择关联某个 cell 选项。

留神⚠️:关联属性的时候,你想关联那个 Cell 上的属性,须要先点击右边 Cell 列表,选中该 Cell,而后再拖线关联下面的控件。

应用拖拽到.m 文件关联的形式所有属性会关联到第一个 cell 上,如下图:

咱们须要独自选中右边的每个 cell,查看属性查看器通过属性查看器和 cell 某个控件关联,而后在拖拽为属性。如图:

退出移动版