我对 UILayoutGuide 完全陌生。我想在 imageView 下方的空白区域中间放置一个 UILabel,它是 imageView 和 UILabel 的父视图(参见下面的视图层次结构)。
通常,我会添加另一个视图并将顶部约束设置为 UIImageView 并将底部约束设置为底部边缘,然后将标签水平和垂直居中于视图。
但我决定使用 UILayoutGuide 来实现它。这是我的代码:
override func awakeFromNib() {
super.awakeFromNib()
let topGuide = UILayoutGuide()
let bottomGuide = UILayoutGuide()
self.view.addLayoutGuide(topGuide)
self.view.addLayoutGuide(bottomGuide)
topGuide.bottomAnchor.constraint(equalTo: title.topAnchor).isActive = true
bottomGuide.topAnchor.constraint(equalTo: title.bottomAnchor).isActive = true
self.view.layoutIfNeeded()
}
结果是我的 UILabel 根本不显示。我究竟做错了什么?