我想知道是否有办法从子类访问约束。我有一个自定义的视图。我不确定是否可以访问我已经在UI中设置的约束,所以我尝试从子类本身创建约束。子类中的快速约束条件
class PerformanceView: UIView {
func initialize() {
let heightConstraint = NSLayoutConstraint(item: self, attribute: .Height, relatedBy: .Equal, toItem: superview, attribute: .Height, multiplier: 0.47, constant: 0);
superview.addConstraint(heightConstraint)
}
}
上述代码不完整。只是显示我正在尝试做什么。所以有两个问题。
1)我可以从子类访问UI上的约束吗? 2)如果不是,我如何在子视图中创建一个高度约束,该高度是超视图高度的一半。
而且我确实有PerformanceView作为视图的类,因为您可以看到它们都在左侧显示“性能视图”。其中4个。
只需添加一个可选的(如果你想暗示解开)'NSLayoutConstraint'财产,有这个'initialize'方法更新它,而不是使其成为一个局部变量。顺便说一句,我可能会为这个方法选择一个不同的名称,因为这会引起与从NSObject继承的'initialize'类方法的混淆。 – Rob