iOS - 以编程方式更改约束关系

j2e*_*nue 9 xcode interface-builder ios nslayoutconstraint

以编程方式在ios中给出以下约束:

IBOutlet NSLayoutConstraint *myConstraint;
Run Code Online (Sandbox Code Playgroud)

这个约束在interfacebuilder中链接到以下细节: 在此输入图像描述

如何以编程方式更改关系属性.我试图查找一个名为setRelation的方法,但我没有看到它.

i_a*_*orf 13

根据文档,它relation是只读的.

我怀疑,你需要做的是设置

self.myConstraint.active = NO;
Run Code Online (Sandbox Code Playgroud)

然后以NSLayoutConstraint编程方式使用以下命令:

+ constraintWithItem:attribute:relatedBy:toItem:attribute:multiplier:constant:

并在此过程中复制您想要保留的值,并替换关系.

然后将其添加到视图层次结构中.