我有一个UILabel,默认情况下只显示3行文字。我希望在某些情况下显示所有文本内容。我已经尝试了我发现的一切,但没有任何作用。这是我最近的尝试:
CGRect labelSize = [contents.contentLanguage.Description boundingRectWithSize:CGSizeMake(self.view.frame.size.width * 0.97, CGFLOAT_MAX) options:NSStringDrawingUsesLineFragmentOrigin attributes:@{NSFontAttributeName:[UIFont systemFontOfSize:15]} context:nil];
cell.descLbl.frame = CGRectMake(labelSize.origin.x,
labelSize.origin.y,
ceil(labelSize.size.width),
ceil(labelSize.size.height));
[cell.descLbl setNumberOfLines:0];
[cell.descLbl setLineBreakMode:NSLineBreakByWordWrapping];
[cell.descLbl sizeToFit];
答案 0 :(得分:0)
也许你应该看看也许使用UITextView?它更适合多行文字。
答案 1 :(得分:0)
好的,我可以通过将.ILib文件中的UILabel高度更改为> = 0
来解决此问题答案 2 :(得分:0)
您有两种方法(选择):
在没有编辑权限的情况下使用UITextView
如果您已经固定空间(显示内容的有限区域,即固定高度)来显示您的内容,而您无法使用可滚动内容,那么您应该在没有编辑权限的情况下使用UITextView。
将UILabel与numberOfLines = 0 一起使用
如果你有灵活的空间(没有有限的空间/区域显示你的内容,即固定的高度)来显示你的内容,那么你应该使用UILabel,行数= 0。
答案 3 :(得分:0)
请使用UiTextView代替UILabel
textviewobj.text=@"";
[textviewobj sizeToFit];