使用AutoLayout垂直调整UITextView文本的大小

我希望使用这里给出的答案来解决我的问题,但UITextView没有intrinsicContentSize方法。 有谁知道我可能会这样做? 在Android上,我只需要在布局文件中使用“wrap-content”。 但在iOS这里是付出代价的。

至于在键入UITextField(通过使用Autolayout)时调整UITextField的build议,我不确定为什么这些人在代理方法的签名中使用IBAction 。 无论如何,他们不为我工作。

UPDATE

我以为我解决了以下问题。 但“成长”是短暂的。 我在打字的时候,这个字段只会增长。 一旦我停止input,它将恢复到较小的尺寸。 我怎样才能使它更加永久?

 - (BOOL) textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text { [self resizeTextViewToFitContent:textView]; } - (void)resizeTextViewToFitContent:(UITextView *)textView { CGRect frame = textView.frame; frame.size.height=[self heightOfTextView:textView]+5; textView.frame=frame; } -(CGFloat)heightOfTextView:(UITextView *)textView { CGRect reviewTextFrame = [textView.attributedText boundingRectWithSize:CGSizeMake(textView.bounds.size.width, MAXFLOAT) options:NSStringDrawingUsesLineFragmentOrigin context:nil]; return CGRectGetHeight(reviewTextFrame); }