有没有办法以编程方式让 UILabel 确定其内在内容大小
Is there a way to programmatically let a UILabel determine its intrinsic content size
我已经通过以下方式创建了标签和容器视图:
let label = UILabel(frame: CGRectMake(0,0, 50, 50))
label.text = "omnomnom"
let labelView = UIView(frame: CGRectMake(50, 50, 100, 100))
labelView.addSubview(label)
labelView.bringSubviewToFront(label)
labelView.backgroundColor = UIColor.orangeColor()
label.textAlignment = .Center
但标签文本可能会更改,因此对于较长的单词,不会显示整个内容。我想知道是否有办法在添加标签后确定内在内容大小,以便我可以使用这些值创建一个比标签大一点的容器视图。
您可以使用 sizeToFit
来完成。所以你只需要在标签配置的末尾添加label.sizeToFit()
。
我已经通过以下方式创建了标签和容器视图:
let label = UILabel(frame: CGRectMake(0,0, 50, 50))
label.text = "omnomnom"
let labelView = UIView(frame: CGRectMake(50, 50, 100, 100))
labelView.addSubview(label)
labelView.bringSubviewToFront(label)
labelView.backgroundColor = UIColor.orangeColor()
label.textAlignment = .Center
但标签文本可能会更改,因此对于较长的单词,不会显示整个内容。我想知道是否有办法在添加标签后确定内在内容大小,以便我可以使用这些值创建一个比标签大一点的容器视图。
您可以使用 sizeToFit
来完成。所以你只需要在标签配置的末尾添加label.sizeToFit()
。