我有一个像这样的UITextView:
var textView = UITextView(frame: CGRectMake(0,0,200,20))
textView.scrollEnabled = true
textView.editable = true
self.view.addSubview(textView)
Run Code Online (Sandbox Code Playgroud)
那里没什么奇怪的
然后我想更新文本:
textView.text = "some short text"
Run Code Online (Sandbox Code Playgroud)
如果我为它请求.contentSize.height我得到20哪个是正确的如果文本更长并且有更多行:
textView.text = "some longer text\n another line\n one more line"
Run Code Online (Sandbox Code Playgroud)
再次获得高度我得到75的也是正确的.
但是一旦我使它不可编辑而且不可滚动它就会失败并且总是返回 20
textView.scrollEnabled = false
textView.editable = false
textView.text = "some short text"
print(textView.contentSize.height) //prints 20
textView.text = "some longer text\n another line\n one more line"
print(textView.contentSize.height) //prints 20
Run Code Online (Sandbox Code Playgroud)
我有什么问题吗?
如果我没错,你可以禁用滚动然后设置contentSize.height等于view.height.
在第二个我不知道它的行为的原因,但如果你修改你的代码,如:
textView.editable = true
textView.text = "some short text"
print(textView.contentSize.height) //prints 20
textView.text = "some longer text\n another line\n one more line"
print(textView.contentSize.height) //prints 20
extView.editable = false
Run Code Online (Sandbox Code Playgroud)
你得到正确的内容高度.我想是这样 - 然后你将editable设置为false,你也禁用一些会改变内容大小的选项
| 归档时间: |
|
| 查看次数: |
2437 次 |
| 最近记录: |