2011-02-09 102 views

回答

2

使用NSString UIKit添加。它们允许根据大小和字体计算字符串的高度。这个代码需要一些微调


CGFloat textViewWidth = CGRectGetWidth(textView.bounds); 
CGSize inset = CGSizeMake(5.0,5.0); 
CGSize stringSize = [myString sizeWithFont:textView.font constrainedToSize:CGSizeMake(textViewWidth-2*inset.width,1024) lineBreakMode:UILineBreakModeWordWrap]; 
BOOL textOutOfFit = stringSize.height+2*inset.height>CGRectGetHeight(textView.bounds); 

注:所以,你可以用这种方法计算出的高度。文本视图中的事实文本具有一些内部边距(我使用插入结构考虑到了这一点),因此所需的文本视图高度将高于计算的字符串高度。 这段代码的作用是让NSString在文本视图边界中水平约束时计算其大小(尽管1024的高度是可能的最大UIView高度)。 然后我所做的是检查返回的字符串高度是否在文本视图边界内。

+0

非常感谢!它工作得很好!你救了我的命=) – 2011-02-10 07:28:24