iphone - UILabel 动态宽度与单元格上的 sizeToFit

标签 iphone uitableview uilabel sizetofit

我有一个自定义的 UITableViewCell,在 Storyboard 上有一个 UILabel。我动态设置此 UILabel 的文本,并且需要相应地调整 UILabel 的宽度,因为在它之后我还有另一个必须保留的 UILabel一边到另一边。

我正在尝试

> MyCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
> author = @"Some dynamic text";
> cell.authorLabel.text = author;
> [cell.authorLabel sizeToFit];

会发生什么: 在第一次渲染时,UILabel 仅保留在 storyboard 上设置的宽度,因此要么文本被裁剪,要么文本后面的空间过多。

滚动后,单元格出队,并正确应用 sizeToFit 方法,但为时已晚,因为第二个 UILabel 已经定位在错误的位置。 (由于信誉度限制,无法发布图片)

有什么想法吗?

最佳答案

也许你的意思是这样的:

MyCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
author = @"Some dynamic text";
cell.authorLabel.text = author; <-- excluded in your code
[cell.authorLabel sizeToFit];

如果这不起作用,请尝试使用如下内容:

子类化 UITableViewCell 并重写以下方法:

- (void)setSelected:(BOOL) selected
{ 
    [super setSelected:selected];
    [self.authorLabel sizeToFit];
}

关于iphone - UILabel 动态宽度与单元格上的 sizeToFit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17787465/

相关文章:

iphone - 是否可以在故​​事板的标签中显示最新的推送通知?

iphone - xib 文件中的 iOS 自定义 View

swift - 保存 UITableViewCells 的顺序

ios - 在 UITableView 中存储当前位置

ios - 检测 UILabel 换行符。动态地将项目放入 UITableViewCell

iphone - 根据按钮的突出显示状态更改标签文本颜色

iphone - 存档 Ipad 应用程序?

iphone - 开发分布式 iPhone/iPad 应用程序的框架建议

iphone - 带有 Objective-C block 的 UIView 动画

iphone - 如何将 NSSString 从 RootViewController 传递到另一个 View ?