如何调整UITextView的宽度,以适应其内容,而不包装?

调整UITextView的大小以适应其内容的高度可以像这样实现:

CGRect frame = _textView.frame; frame.size.height = _textView.contentSize.height; _textView.frame = frame; 

有没有包装的内容文字的东西类似适合宽度?

1)您可以使用NSString UIKit Additions来计算文本的大小(并相应地调整您的UITextView的大小)。 你可能在这里看到一个例子。

例如,如果你需要知道你的NSString的CGSize(如果在单行上),那么使用CGSize sz = [_textView.text sizeWithFont:_textView.font]然后根据这个尺寸值调整你的框架。

如果您需要知道文本的大小(如果呈现在多行上),如果文本达到给定的宽度,则将其包装,请使用sizeWithFont:constrainedToSize:lineBreakMode: instead,等等。


2)你也可能对UIView的sizeThatFits: sizeToFit方法感兴趣。 第一个返回CGSize(适合给定的CGSize传入参数),以便您的UITextView可以显示所有的文本。 第二个实际上做了resize,为你调整框架。