为啥标签的高度为零?
Posted
技术标签:
【中文标题】为啥标签的高度为零?【英文标题】:Why label's height is zero?为什么标签的高度为零? 【发布时间】:2016-12-12 03:52:03 【问题描述】:contentLabel.preferredMaxLayoutWidth = kScreenWidth - 20
contentLabel.numberOfLines = 0
我使用 SnapKit 设置顶部和左侧。
contentLabel.snp.makeConstraints (make) in
make.top.equalTo(topView.snp.bottom)
make.left.equalTo(topView.iconView)
print(contentLabel.frame.size.height)
打印 0。可以吗?
【问题讨论】:
【参考方案1】:您可以在 Swift 3 中通过此函数获取标签高度:
func GetheightOfLable(strLable:String , widthlable:CGFloat) -> CGFloat
let rectDetail:CGRect = strLable.boundingRect(with: CGSize(width: widthlable, height: CGFloat(MAXFLOAT)), options: NSStringDrawingOptions.usesLineFragmentOrigin, attributes: [NSFontAttributeName:UIFont.systemFontSize], context: nil)
print(rectDetail.height)
return rectDetail.height
【讨论】:
【参考方案2】:你可以试试这个,我想它会帮助你
let sizeToFit = CGSize(width: contentLabel.frame.size.width,
height: CGFloat.greatestFiniteMagnitude)
let textSize = contentLabel.sizeThatFits(sizeToFit)
希望对你有帮助
【讨论】:
以上是关于为啥标签的高度为零?的主要内容,如果未能解决你的问题,请参考以下文章
当单元格的高度略微增长时,为啥我的标签不遵守我的自动布局约束?