在 Swift 中动态调整文本视图的大小



我正在开发一个简单的琐事应用程序。主屏幕使用文本视图来允许比文本字段容纳的更大的问题。这样做的问题是,当文本视图大于问题时,它很难看。我已经可以通过计算字符串中的字符数并以这种方式调整大小来执行有限形式的动态调整大小。但是,有时这并不完美,如此处所示; 此外,如果将其带到iPhone X以外的其他设备上,则调整大小将远远偏离。

有没有办法让我计算文本换行后文本视图中的行数?

您可以对文本视图设置约束。在您的情况下,它看起来像这样:

NSLayoutConstraint(item: textView, attribute: .height, relatedBy: .lessThanOrEqual, toItem: view, attribute: .height, multiplier: 0.5, constant: 0).isActive = true

此特定约束将文本视图最大高度设置为视图大小的一半。

这里有一个很好的自动布局指南,解释了 Apple 的约束是如何工作的, https://developer.apple.com/library/archive/documentation/UserExperience/Conceptual/AutolayoutPG/

最新更新