當我粘貼一些文本時, contentSize 的 textview 高度不正確。它在粘貼之前回傳文本高度。
例如,
我期望高度值:[contentSize Height] 1019(粘貼后)但實際值:[contentSize Height] 540(粘貼前)
我嘗試了 setNeedDisplay()方法,但它不起作用。
func textView(_ textView: UITextView, shouldChangeTextIn range: NSRange, replacementText text: String) -> Bool
{
print("[contentSize] \(textView.contentSize.height) size to fit \(textView.sizeThatFits(view.frame.size).height)")
}
uj5u.com熱心網友回復:
當textView(_:shouldChangeTextIn:replacementText:)被呼叫時,文本尚未應用于視圖,這意味著 contentSize 尚未更改。如果可能,您可以使用textViewDidChange(_:),它應該列印正確的尺寸。
func textViewDidChange(_ textView: UITextView) {
print("[contentSize] \(textView.contentSize.height) size to fit \(textView.sizeThatFits(view.frame.size).height)")
}
如果你真的需要計算方法上的文本大小,你可以嘗試使用這樣shouldChangeTextIn的方法來計算大小。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/474128.html
標籤:IOS 迅速 uikit uitextview
