【问题标题】:Custom UITableViewCell label font problems自定义 UITableViewCell 标签字体问题
【发布时间】:2011-07-17 14:49:32
【问题描述】:

所以我在 IB 的 nib 文件中创建了一个自定义 UITableViewCell,非常基本,它现在有一个 imageview 和两个标签。我已经在表格中填充了正确大小的正确单元格和所有内容,但是有一个小问题。出于某种原因,第一个标签的字体大小在不同单元格之间发生变化。有时它与第二个标签的字体大小相同,有时它是默认字体大小。这很奇怪,因为它保留了字体颜色和位置,只是大小不对。

有人知道这里发生了什么吗?

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    NSInteger row = [indexPath row];
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"cell"];
    if (cell == nil) {
        cell = [self loadCell];
    }
    NSDictionary *event = [eventsArray objectAtIndex:row];
    EventTableCell *eventCell = (EventTableCell*)cell;
    eventCell.mainLabel.text = [event valueForKey:@"Title"];
    eventCell.subLabel.text = [event valueForKey:@"Time"];
    return eventCell;
}

第二个标签总是有正确的字体大小。

【问题讨论】:

  • 您需要发布您的代码...可能是您的 cellForRowAtIndexPath: 方法...
  • - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { NSInteger row = [indexPath row]; UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"cell"]; if (cell == nil) { cell = [self loadCell]; } NSDictionary *event = [eventsArray objectAtIndex:row]; EventTableCell *eventCell = (EventTableCell*)cell; eventCell.mainLabel.text = [event valueForKey:@"Title"]; eventCell.subLabel.text = [event valueForKey:@"Time"]; return eventCell; }
  • 你在哪里设置单元格的大小/位置/字体?
  • 我有 heightForRowAtIndexPath 它定义了单元格的高度,但问题不是单元格的大小,而是字体格式搞砸了

标签: ios fonts uitableview


【解决方案1】:

默认情况下,UILabels 在 IB 中有一个选项“调整为适合”。它的作用是改变字体大小以使您的内容适合分配的大小。可能只是巧合,它的字体大小与您的第二个 UILabel 相同。

【讨论】:

  • 男孩,我很高兴这是一个如此简单的修复。那完成了工作。我什至没有想到要查看正在缩小的文字
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-02-26
  • 2011-11-04
  • 1970-01-01
  • 2013-02-26
相关资源
最近更新 更多