我对 iOS 开发相当陌生,并且很难根据其内容调整 UITextView 的大小。我找到了几个计算字符串渲染大小和/或更新文本视图的帧大小的示例,但是我似乎无法让这些工作。
当我将 UITextView 添加到我的视图时,它会添加一个高度约束,我认为它会将其锁定到特定高度。如何解决它,通过代码更新约束,和/或让我的 UITextView 垂直调整大小以显示我的内容?
我对 iOS 开发相当陌生,并且很难根据其内容调整 UITextView 的大小。我找到了几个计算字符串渲染大小和/或更新文本视图的帧大小的示例,但是我似乎无法让这些工作。
当我将 UITextView 添加到我的视图时,它会添加一个高度约束,我认为它会将其锁定到特定高度。如何解决它,通过代码更新约束,和/或让我的 UITextView 垂直调整大小以显示我的内容?
你可以创建一个出口到垂直尺寸约束,然后调整.constant
约束的属性来修改你的文本视图的高度。
UITextView 继承自 UIScrollView。作为其逻辑的一部分,它会更改其 contentSize 属性的高度,以允许用户垂直滚动到 TextView 内容的任何部分。
我建议使用 UITextView 的 ContentSize 属性来确定您的内容到底有多“高”。然后,您可以相应地设置 UITextView 的框架。
或者:您可以使用 NSString+UIKitAdditions 类别中的正确方法来计算文本的大小。
If you don't want autolayout then disable it in the xib file.
If you want to change the contraint and it's value this tutorial will help you to deal with autolayout.