我一直在使用自动布局功能。一切正常,但是如果我以编程方式调整任何控件的大小,其他子视图或控件不会相应地安排。如何在以编程方式调整任何控件的大小后更新约束。
或者
在代码中调整控件大小后 AutoLayout 会起作用吗?
编辑:
在这里,我根据字符串调整文本视图的大小,但它与下面的子视图重叠。
- (void)textViewDidChange:(UITextView *)textView
{
if (textView == pupose_txt_view) {
CGSize maximumLabelSize = CGSizeMake(self.topic_text_view.frame.size.width,
FLT_MAX);
UILabel *label = [[UILabel alloc] initWithFrame:pupose_txt_view.frame];
CGSize expectedLabelSize = [pupose_txt_view.text sizeWithFont:pupose_txt_view.font
constrainedToSize:maximumLabelSize
lineBreakMode:label.lineBreakMode];
CGRect newFrame = pupose_txt_view.frame;
newFrame.size.height = expectedLabelSize.height;
pupose_txt_view.frame = newFrame;
}
}