ios - UITableViewCells 未扩展以适合文本

标签 ios ios5 uitableview

我试图让我的 UITableView 中的单元格适应其中文本的长度。如果文本太长,单元格会变高一点以适应它。

我正在尝试这样的事情:

cell.textLabel.numberOfLines = 0;
cell.textLabel.lineBreakMode = UILineBreakModeWordWrap;

cell.textLabel.text = [[name stringByAppendingString:@": "] 
                               stringByAppendingString:comment];

但发生的情况是单元格只是试图将文本放入相同的垂直空间量,而不会变得更高。

有人知道我在这里做错了什么吗?

谢谢!

最佳答案

您需要使用单元格高度委托(delegate)。看这里:dynamic UITableViewCell height .

您需要做的是计算文本高度,然后将单元格的高度设置为该值。
具体这个方法:

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
    NSString *yourText = [someArray objectAtIndex:indexPath.row];
    CGSize constraint = CGSizeMake(320 /*cell width*/, CGFLOAT_MAX);
    CGSize size = [yourText sizeWithFont:[UIFont systemFontOfSize:FONT_SIZE] constrainedToSize:constraint lineBreakMode:UILineBreakModeWordWrap];
    CGFloat height = MIN(size.height, 44.0f);

    return height;
}

关于ios - UITableViewCells 未扩展以适合文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11850637/

相关文章:

ios - 另一个 Collection View 内的 Collection View 单元格的约束

ios - 内容未显示在 UITableViewCell 上

iphone - UITableViewCell 中的 UIActivityIndi​​catorView 不会停止旋转

iPhone 应用程序加载器故障排除

objective-c - 使用 `valueForKey` 访问 UIBarButtonItem 中的 View ,违反私有(private) API?

ios - 支持应用商店提交应用的url

iphone - 在 iOS 中获取有关时区更改的通知

ios5 - AFNetworking + NsOperationQueue - 下载数千张图片

ios - 这个NSFetchRequest有什么问题?

ios - 尝试访问自定义 UiView 中的高度属性,遇到 "height is a get-only property"错误