UITextView 根据内容自动增长 这个可能都是经常会碰到的需求~
方案有很多 根据内容文字算大小之类的~
这里说一种 autolayout的方案 并一下相关的问题
在xib里面布局声明TextView之后 再把height 的contraint关联到fileOwner
通过
-(void)textViewDidChange:(UITextView *)textView{
CGSize descriptionSize = self.descriptionTextViewInput.contentSize;
[self.descriptionInputHeight setConstant:descriptionSize.height];
}
代理来对textview的contentSize自动计算出来的高度去赋值给constraint的constant
达到自动增长的效果
引用:
出现的问题:
仅仅这样设置会出现这样的一个情况 如果只有文字只有一行的情况下
是正常的
但是如果持续编辑下去到了第二行
会产生expand height 跟bounds有关
比较完美的一种:
将height 的优先级设置为750 然后 content compression resistance (抗抵抗属性) vertical 优先级设置为1000
再将textview 的scroll enbled 去掉
引用: