我有一个UIView和我使用Xcode Interface Builder设置约束.
现在我需要以UIView's编程方式更新高度常量.
有一个功能myUIView.updateConstraints(),但我不知道如何使用它.
在Interface Builder中进行了一些可视化布局后,我创建了一些我想在运行时访问的约束.有没有办法在Interface Builder中标记或识别约束,以便以后查找它们?
我想要这样做的原因是我需要根据视觉指定的约束执行一些计算.我知道Apple提供了可视格式语言,我可以在控制器中以编程方式指定约束.我宁愿不使用这种方法,所以我不会失去IB的设计时反馈.
建立引用插座确实有效,但问题仍然存在.
我正在使用故事板设置按钮的约束.我在约束的属性中看到了一个选项"Identifier".

我想引用这个约束,改变它在代码中的值,移动一个对象.
如何NSLayoutContraint从此标识符中获取对此的引用.
我阅读了文档,它是这样编写的
@interface NSLayoutConstraint (NSIdentifier)
/* For ease in debugging, name a constraint by setting its identifier, which will be printed in the constraint's description.
Identifiers starting with UI and NS are reserved by the system.
*/
@property (nullable, copy) NSString *identifier NS_AVAILABLE_IOS(7_0);
@end
Run Code Online (Sandbox Code Playgroud)
所以我意识到这是出于调试目的.
如果我想获得它并使用它怎么办?我看到了这个链接,但没有给出令人满意的答案:如何通过其指针获取NSLayoutConstraint的标识符?