我有UITextView
名为recipeDesc
。我想在我的应用程序中有一个选项来动态调整UITextView
的高度以适应UITextView
内的内容(文本)(所以我需要知道如何以编程方式进行)。我找到了Objective-C的一些答案,但我对它不是很熟悉,所以我不知道如何在Swift中实现它。
提前感谢您的帮助。
答案 0 :(得分:16)
您可以通过以下方式获得UITextView
的理想内容尺寸:
let contentSize = textView.sizeThatFits(textView.bounds.size)
所以在那之后,你可以用那个高度调整它的框架:
var frame = textView.frame
frame.size.height = contentSize.height
textView.frame = frame
(我最初使用的是textView.contentSize.height
,但是当视图尚未渲染时仍然无效。例如在viewDidLoad
)
如果使用自动布局,则规则略有不同。如果你这样做,请更新你的问题。