0

我已经完成了我的研究并遵循了这个过程的众多指南,包括:

  1. 将未知数量的行添加到“静态单元”UITableView
  2. https://devforums.apple.com/message/502990#502990

但是后续问题中反复出现的主题始终是“TableViewCells 出现了,但它们是空的”。我假设人们解决了这个问题,但没有发布任何解决方案。

因此,我所处的阶段包括:静态单元格显示并正确填充数据,动态单元格正确显示数量,但不显示其元素(它们是空的)。

我相信我已经正确连接了所有内容。我有:

  1. 在我的 UITableViewController 子类中,包含并覆盖了上面两个链接中标记为“Answer”的所有必需方法。
  2. 子类化 UITableViewCell,并在子类中包含两个 UILabel 属性。
  3. 将 Storyboard 中单元格的类设置为我的子类,并给定一个适当的标识符,该标识符在 Controller 子类中正确使用。
  4. 在情节提要的单元格上放置了两个 UILabel。
  5. 将两个标签连接到 Cell 子类中的属性。

我实例化并为属性赋值,就像上面的答案一样。

static NSString *CellIdentifier = @"DynamicCell";
    OwnersInfoEventsCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

    if (!cell) {
        cell = [[OwnersInfoEventsCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
    }

    cell.eventName.text = @"Name"; //this doesn't show up
    cell.eventNeed.text = @"Need"; //this doesn't show up
    cell.backgroundColor = [UIColor redColor]; //this works, the cell shows up red
    return cell;

我错过了什么?

4

2 回答 2

0

首先,您需要检查您是否已 OwnersInfoEventsCell正确定义。检查您在单元类中定义的标签是否正确定义。检查该标签的框架。

 _ eventName = [[UILabel alloc]initWithFrame:CGRectMake(25, 2, 40 , 40)];
 _ eventName.backgroundColor = [UIColor clearColor];
 [_ eventName setBaselineAdjustment:UIBaselineAdjustmentAlignCenters];
 eventName.font = [UIFont fontWithName:@"King" size:12];
 [self.contentView addSubview:_ eventName ];

检查您是否在单元格的内容视图中添加了标签。这可能是个问题。让我展示您的代码,OwnersInfoEventsCell然后我可以更简短地建议您。

希望这可以帮助你。

于 2013-01-25T20:44:19.553 回答
0

这发生在我身上,问题是当您创建自己的单元格时(以防您找不到可重复使用的单元格),它的两个标签为零。因此,您还必须创建两个标签并将它们设置为您的单元格的标签,希望它会起作用。

于 2013-01-25T19:20:03.363 回答