我遇到一些UITextViews的问题。您可以选择更改我的应用程序中的字体大小,当您更改它时,它会重新加载内容并调整textview的大小,因为视图中有多个。我使用下面的代码进行调整大小,但它有时会返回正确的高度,但是当我更改应用程序中的文本大小时,它似乎会分解并返回不正确的高度,文本视图中的文本会被切断底部。有人能帮助我吗?
int height = [tempTextView.text sizeWithFont:
[UIFont fontWithName:fontFamily size:fontSizeF]
constrainedToSize:CGSizeMake(300, 10000) lineBreakMode:
NSLineBreakByWordWrapping].height;
答案 0 :(得分:1)
我知道这是一个老问题&迟到的答案,但它仍然非常相关,
现在不推荐使用这个sizeWithFont方法,这种新方法效果最好
NSString *content = **Whatever your label's content is expected to be**
CGSize maximumLabelSize = CGSizeMake(390, 1000);
NSDictionary *stringAttributes = [NSDictionary dictionaryWithObject:[UIFont systemFontOfSize:13] forKey: NSFontAttributeName];
CGSize newExpectedLabelSize = [content boundingRectWithSize:maximumLabelSize options:NSStringDrawingTruncatesLastVisibleLine|NSStringDrawingUsesLineFragmentOrigin attributes:stringAttributes context:nil].size;
因此您可以将标签(或表格单元格等)调整为
label.frame.size.height = newExpectedLabelSize.height;
我希望这有助于,欢呼,吉姆。