这就是我想要达到的目标。在 UITableView 单元内,我有一个填充有动态内容的 UIlabel 和一个具有设定高度的单独 UIView。在某些情况下,当有很多文本时,UIlabel 决定了 UITableView Cell 的高度。在其他情况下,当 UILabel 中只有一行文本时,UIView 会设置单元格的高度。(这是我目前拥有的。)
self.myLabel.setTranslatesAutoresizingMaskIntoConstraints(false)
self.myView.setTranslatesAutoresizingMaskIntoConstraints(false)
let viewsDictionary = [
"myLabel":myLabel,
"myView":myView,
]
let myLabel_H:Array = NSLayoutConstraint.constraintsWithVisualFormat("H:|-15-[myLabel]-60-|", options: NSLayoutFormatOptions(0), metrics: nil, views: viewsDictionary)
let myLabel_V:Array = NSLayoutConstraint.constraintsWithVisualFormat("V:|-[myLabel]-|", options:NSLayoutFormatOptions(0), metrics: nil, views: viewsDictionary)
self.contentView.addConstraints(myLabel_H)
self.contentView.addConstraints(myLabel_V)
let myView_H:Array = NSLayoutConstraint.constraintsWithVisualFormat("H:[myView(50)]-|", options: NSLayoutFormatOptions(0), metrics: nil, views: viewsDictionary)
let myView_V:Array = NSLayoutConstraint.constraintsWithVisualFormat("V:|-(>=10)-[myView(100)]-(>=10)-|", options: NSLayoutFormatOptions(0), metrics: nil, views: viewsDictionary)
self.contentView.addConstraints(myView_H)
self.contentView.addConstraints(myView_V)
相反,我得到了这个:(而且我抛出错误:=10)-| (名称:'|':UITableViewCellContentView:0x7fc21bc6d050 )>)