NSLayoutAttribute中Top和TopMargin有什么区别?

时间:2015-02-01 10:54:07

标签: ios swift autolayout constraints size-classes

我正在尝试通过代码创建约束:

constraintImageCharacterTop = NSLayoutConstraint (item: image,
        attribute: NSLayoutAttribute.Top,
        relatedBy: NSLayoutRelation.Equal,
        toItem: self.view,
        attribute: NSLayoutAttribute.Top,
        multiplier: 1,
        constant: viewTop)
    self.view.addConstraint(constraintImageCharacterTop)

但是,我不确定这个约束的哪个是NSLayoutAttributeimage应该有一个主要Superview self.view的顶部空间。

我认为这是有效的,但我不确定我是否正确:

Imgur

我应该将NSLayoutAttribute.TopNSLayoutAttribute.TopMargin用于图片A吗?

1 个答案:

答案 0 :(得分:6)

我通常不会对约束使用约束,这是个人偏好,要么约束到视图的边缘,要么约束到它的边距(8px)。假设您的图像A的顶部为8px,您可以创建一个常量为8的顶部约束,或者一个常量为0的上边距约束,您将得到相同的结果。