我的屏幕底部有一个textView,它是一个containerView的子视图。这是聊天应用的文本输入部分。我想知道在文本视图大小增加时如何增加textView容器视图的大小。我正在使用autolayout。我使用了以下textView委托方法来调整textView的大小,它似乎工作正常。但无论我尝试什么,容器视图都不会改变大小。谢谢。
func textView(textView: UITextView, shouldChangeTextInRange range: NSRange, replacementText text: String) -> Bool { messageTextView.frame.size.height = messageTextView.contentSize.height return true }
答案 0 :(得分:1)
好。我只是不将textView放在另一个视图中解决了这个问题。我仍然将两个视图放在同一个位置,但它们都只是主视图的子视图。两个都不在另一个里面。然后通过textView的contentSize.height更改每个视图的高度可以正常工作。
答案 1 :(得分:0)
我有同样的功能对我有用:
func textView(textView: UITextView, shouldChangeTextInRange range: NSRange, replacementText text: String) -> Bool {
var height = self.noteValueLabel!.contentSize;
textView.sizeToFit();
super.frame.size.height+=textView.frame.maxY - super.frame.height + 3.0;
}
当noteValueLabel是UITextView时,它对我有用 和super.frame.size是你的messageTextView