我正在使用AutoLayout
。我有%10宽度和200固定高度的视图。我将UILabel
放入该视图中,边距为0。然后我正在轮换UILabel
,更改内容并调用sizeToFit()
函数。在控制器的负载下,旋转工作但内容被截断。在我按下控制器上的按钮后,UILabel
正在被放大,内容正在适合。
我该怎么做才能避免这个问题?
注意:我通过调试检查了标签框架的宽度和高度。在sizeToFit()
之后,框架的宽度和高度会按预期更改。但是,UI并不令人耳目一新。我还尝试了label.setNeedsLayout()
和label.layoutIfNeeded()
但没有改变。
为了轮换,我使用以下扩展名:
extension UILabel {
@IBInspectable
var rotation: Int {
get {
return 0
} set {
let radians = CGFloat(CGFloat(Double.pi) * CGFloat(newValue) / CGFloat(180.0))
self.transform = CGAffineTransform(rotationAngle: radians)
}
}
}
答案 0 :(得分:1)
您可以尝试使用view.layoutIfNeeded()
代替label.layoutIfNeeded()