Xcode - 仅带顶部标签的动态高度

时间:2016-09-19 04:24:59

标签: swift xcode autolayout

我一直试图仅为所提供图像中的顶部标签设置动态高度。我尝试了很多东西,但我总是把这个行与内容重叠。任何帮助,将不胜感激。我在Swift中使用AutoLayout。

xcode_dynamic_height_top_label

更新:

以下是我目前的限制因素:

image2 image3

我在视图控制器的viewDidLoad中有以下代码:

notificationsTable.estimatedRowHeight = 85.0
notificationsTable.rowHeight = UITableViewAutomaticDimension

2 个答案:

答案 0 :(得分:0)

这样做:

长文字图片: enter image description here

简短文字: enter image description here

图像约束:

enter image description here

动态标签约束:

enter image description here

普通文本约束:

enter image description here

希望这个帮助

答案 1 :(得分:0)

使用这个简单的方法:

 func heightForView(_ text:String, width:CGFloat) -> CGFloat{
    let label:UILabel = UILabel(frame: CGRect(x: 0, y: 0, width: width, height: CGFloat.greatestFiniteMagnitude))
    label.numberOfLines = 0
    label.lineBreakMode = NSLineBreakMode.byWordWrapping
    label.text = text
    label.sizeToFit()
    return label.frame.height
}

notificationsTable.rowHeight = heightForView(yourText, width: yourCGFloatWidth)