如何以编程方式更新 UITextView maximumNumberOfLines 并查看 UI 更新。
Posted
技术标签:
【中文标题】如何以编程方式更新 UITextView maximumNumberOfLines 并查看 UI 更新。【英文标题】:How to update UITextView maximumNumberOfLines programmatically and see update on UI. 【发布时间】:2018-08-26 20:50:01 【问题描述】:我有禁用滚动的 UITextView。我需要以编程方式更改 maximumNumberOfLines
并在此之后查看 UI 上的更新。 UITextView 使用自动布局。
textView.textContainer.maximumNumberOfLines = 0
这应该使 UI 上 textView 中的整个文本可见。
附:类似的问题被问了很多次,但我没有找到适合我的答案。
【问题讨论】:
【参考方案1】:我发现了如何自己实现它。
所以基本上当你改变textView.textContainer.maximumNumberOfLines
UIKit 不知道这一点(但我认为应该)。即使您尝试更新布局。解决方法很简单:
textView.textContainer.maximumNumberOfLines = 0
textView.invalidateIntrinsicContentSize() //add this line
当影响到 intrinsicContentSize 的某些变化时调用此函数以通知 UIKit。
我希望它有用并节省一些人的时间。
【讨论】:
以上是关于如何以编程方式更新 UITextView maximumNumberOfLines 并查看 UI 更新。的主要内容,如果未能解决你的问题,请参考以下文章
在 UITextView 上以编程方式禁用 iOS8 Quicktype 键盘
我将如何(以编程方式)将 UITextView 的高度设置为其在 Swift 中的内容大小?