swift 3 ios:UILabel
Posted
技术标签:
【中文标题】swift 3 ios:UILabel【英文标题】:swift 3 ios : UILabel 【发布时间】:2016-10-26 09:30:35 【问题描述】:我正在尝试创建具有动态高度的UILabel
这是我的代码:
label1.text = Message
label1.textColor = UIColor.white
let font = UIFont.systemFont(ofSize: 17.0)
label1.font = font
label1.textAlignment = .center
label1.lineBreakMode = NSLineBreakMode.byWordWrapping;
label1.numberOfLines = 0;
label1.sizeToFit()
label1.frame = CGRect(x: 0, y:40 , width: 270, height: label1.frame.height)
但是,我的label
保留一行,我的消息大约是 3 行
那么这个问题的最佳解决方案是什么?
【问题讨论】:
你对你的 UILabel 有什么限制吗? 请看这个链接***.com/questions/39410796/… 只需要设置标签高度关系大于等于 【参考方案1】:最好的解决方案是使用约束。
直接在 InterfaceBuilder 中或通过代码。 (SnapKit 将是一种通过代码构建约束的好方法)
【讨论】:
在基于约束的布局中,您不需要对高度进行约束。位置和宽度的约束就足够了。 Autolayout 会自动计算高度。【参考方案2】:试试
let size = label1.sizeThatFits(CGSize(width: 270, height: 100000))
label1.frame = CGRect(x: 0, y: 40, width: 270, height: size.height)
代码的最后两行。
【讨论】:
【参考方案3】:你可以用故事板来做
标签高度与大于或等于
的关系【讨论】:
以上是关于swift 3 ios:UILabel的主要内容,如果未能解决你的问题,请参考以下文章