我有一个 UITableView
。其中,每个单元格都包含一个 UILabel
。但是,如果 UILabel
中的文本超过 UIlabel
的帧宽度,则它不会被截断。
我尝试了以下选项,但没有任何效果。
1> 将 LineBreakMode
设置为 NSLineBreakByTruncatingTail
和 setNumberOfLines:1
2> 将 LineBreakMode
设置为 NSLineBreakByWordWrapping
和 `setNumberOfLines:1
在 Storyboard 中,也存在相同的设置。
这是代码片段:
NSString * fullName;
// FullName assignment code
UILabel *label = (UILabel *)[cell.contentView viewWithTag:100];
NSLog(@"textlabel width: %f , text size : %d ", label.bounds.size.width,fullName.length);
label.adjustsFontSizeToFitWidth = NO;
label.text = fullName;
[label setLineBreakMode:NSLineBreakByTruncatingTail];
[label setNumberOfLines:1];
[label sizeToFit];
[label setTextColor:[UIColor whiteColor]];
最佳答案
这是因为您执行了 sizeToFit
,它会根据内容调整 UILabels
的宽度。
顺便说一下:你有理由使用标签而不是 IBOutlet 吗?我想你已经在 Storyboard 中设置了 UILabel
?
关于ios - UIlabel的文字截断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23827816/