我需要从Nib加载UIView并将其呈现为PDF(这是发票)。因此,我从笔尖加载了自定义UIView invoiceView
并进行了设置(在其中设置了各种标签)。
设置标签后,我必须强制视图自行布局,以便各种UI元素能够正确调整自身的大小/位置。
致电:
invoiceView.updateConstraints()
什么也没做
致电:
invoiceView.layoutSubviews()
搞砸了一切。
这是我已经尝试过的:
invoiceView
的设置框架(没有任何作用)。设置框架并将
invoiceView
添加到当前视图层次结构:self.view.addSubview(invoiceView)
正确设置所有内容。但是我不想这样做。我想强制视图正确地布局自身(使用布局约束)。我究竟做错了什么?我应该在
invoiceView
上调用什么方法,以使其正确布局而不将其添加到当前视图层次结构中?PS:代码已从内存中键入。请忽略错别字。
最佳答案
尝试
invoiceView.setNeedsLayout()
invoiceView.layoutIfNeeded()