美文网首页iOS DeveloperiOS 开发
iOS约束NSLayoutConstraint

iOS约束NSLayoutConstraint

作者: 阿汤8阿义 | 来源:发表于2016-05-03 19:05 被阅读891次

iOS约束NSLayoutConstraint

NSLayoutConstraint的几个属性;

使用:

WithItem:要约束的对象

attribute:约束的类型(约束对象的什么位置)

relatedBy:与对象的关系

toItem:参考对像

attribute:这个参数是要告诉要约束的对象把你放到参考对象的什么位置

multiplier:距离的倍数

constant:约束的距离

[NSLayoutConstraintconstraintWithItem:_myView

attribute:NSLayoutAttributeTop

relatedBy:NSLayoutRelationEqual

toItem:self.view

attribute:NSLayoutAttributeTop

multiplier:1.0

constant:10],

要实现自动布局,必须把该属性设置为no

self.translatesAutoresizingMaskIntoConstraints=NO;//

类型不同对应的位置数据正负不同

Top Left是正数对应在参考对象下部和右边也就是在里面

RightBottom是正数对应在参考对象下部和右边也就是外面,是负数就向反方向

[NSLayoutConstraint constraintWithItem:note

attribute:NSLayoutAttributeTop

relatedBy:NSLayoutRelationEqual

toItem:views

attribute:NSLayoutAttributeTop

multiplier:1.0

constant:-10]];

介绍NSLayoutConstraint的使用

WithItem:这个一般是会填写被约束的对象

attribute:是规定约束对象的那个部位

relatedBy:参考者与约束对象的关系

toItem:参考者

attribute:参考对象的位置与约束对象是相同的

multiplier:计数的倍数

constant:这就是约束的计数(下面对它做一个系统的介绍)

刚开始使用的时候可能不太容易上手,它没有像storyboard那样有视图画看着直观。废话不多说下面就来具体使用和理解

首先我要确定的是那个做约束对象的参考对象,确定好了就可以开始做约束了

上部是代码,下部是效果。这里的黄色是一个参考对象(也是我们代码中的views这个对象),红色部分是一个约束对象(note这个对象)。

代码理解,要约束的是note,约束的类型是头部,设置他们是对立关系,约束的参考对象views,我要将约束对象的头部约束到参考对象的那个部位,设置约束倍数,设置约束的计数。

我的代码中设置的attribute:这个参数是相同可能对理解不是太大,那我下面改动一下做一个详解。通过对上面代码理解那么我要将note约束到views的下部是不是就改动《约束对象的头部约束到参考对象什么部位,也就是第二个attribute:》那就改动一下

结果是对的,说明理解是没有问题

观察细致的人可能会疑惑为什么下面为什么会出现一个-10计数?那我就把-10该为10会出现什么效果了

Top Left是正数对应在参考对象下部和右边也就是在里面

ightBottom是正数对应在参考对象下部和右边也就是外面,是负数就向反方向

相关文章

网友评论

    本文标题:iOS约束NSLayoutConstraint

    本文链接:https://www.haomeiwen.com/subject/yocrrttx.html