【发布时间】:2018-06-21 05:45:15
【问题描述】:
func textView(_ textView: UITextView, shouldChangeTextIn range: NSRange, replacementText text: String) -> Bool {
let fixedWidth: CGFloat = textView.frame.size.width
let newSize: CGSize = textView.sizeThatFits(CGSize(width: fixedWidth, height: CGFloat.greatestFiniteMagnitude))
delegate.updateHeightTextView(height: newSize.height)
return true
}
我在上面的函数中计算了 textview 的高度。 当我输入一些文本时效果很好,但是当我复制和粘贴文本时它不正确。
【问题讨论】:
-
1.这是什么
sizeThatFits方法? 2.您的代码没有考虑建议的更改。请记住,shouldChangeTextIn在文本视图实际更新之前被调用。 3. 你的代码即使在打字时也不能正常工作。 -
观察 textView 的 text 属性并计算文本变化的大小您可以使用 RxCocoa 进行观察
-
@rmaddy 我更新了我的代码。
-
当我输入时,newSize 返回正确,但当我粘贴文本时,它不正确
-
你做的更新与我的cmets无关。