OStack程序员社区-中国程序员成长平台

标题: ios - 稍后以编程方式更改集合 NSLayoutConstraint [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 18:01
标题: ios - 稍后以编程方式更改集合 NSLayoutConstraint

我正在代码中创建一个 View (这个没有 xib 或 Storyboard )并在代码中设置约束,例如:

NSDictionary *bindings = NSDictionaryOfVariableBindings(_myView);
_myView = [[UIView alloc] init];
[self.view addSubview:_myView];
_myView.translatesAutoresizingMaskIntoConstraints = NO;
[self.view addConstraints: [NSLayoutConstraint constraintsWithVisualFormat"H:|-0-[_myView]-0-|" options:0 metrics:nil views:bindings ] ];
[self.view addConstraints: [NSLayoutConstraint constraintsWithVisualFormat"V:|-0-[_myView(25)]" options:0 metrics:nil views:bindings ] ];

稍后在另一种方法中,我想更改 _myView 的位置并为该更改设置动画。

我的问题: 更改设置约束的最佳/正确方法是什么? 我不知道如何改变例如X 和 Y 位置。例如。我将两个值都设置为 0,我想将 X 和 Y 更改为 50。



Best Answer-推荐答案


约束与任何其他对象一样,如果您想稍后更改它们,请创建一个属性。

@property (nonatomic, strong) NSLayoutConstraint *centerConstraint;

然后将其设置为特定的约束,将其添加到 View 中,您可以稍后将其删除并重新添加。

关于ios - 稍后以编程方式更改集合 NSLayoutConstraint,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21111974/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4