我尝试使用textView
在故事板中设置可展开的autolayout
。
以下是我设置约束的方法:
“说明”附近的字段为UITextView
。我希望它扩展它取决于行文本字段包含多少。
视图的树结构是:
UIView
- > UITextView
我现在这样做:
- (void)textViewDidChange:(UITextView *)textView {
CGFloat fixedWidth = textView.frame.size.width;
CGSize newSize = [textView sizeThatFits:CGSizeMake(fixedWidth, MAXFLOAT)];
CGRect newFrame = textView.frame;
newFrame.size = CGSizeMake(fmaxf(newSize.width, fixedWidth), newSize.height);
textView.frame = newFrame;
}
它将UITextView
按预期扩展到父视图的底部。但我的任务是:
height
以保存底部的边距。正如你所看到的那样,frame
让我陷入困境,但我有这种感觉,我需要使用约束来做到这一点。你能建议一个合适的解决方案吗?
答案 0 :(得分:1)
尝试以下方法:
parentView
UITextView
IBOutlet
连接到该高度限制textViewDidChange:
方法答案 1 :(得分:0)
可以不以编程方式更新约束。关键是取消选中textview上的“Scrolling enabled”字段,并将视图的高度约束设置为大于或等于初始常量。