ios – 添加约束时出错

我正试图在2个视图上设置约束,以便它们彼此接触,如下所示:

我尝试以编程方式设置约束:

[self addConstraint:[NSLayoutConstraint constraintsWithVisualFormat:@"[_firstView][_secondView]" options:0 metrics:nil views:NSDictionaryOfVariableBindings(_firstView, _secondView)]];

但我收到以下警告:

Incompatible pointer types sending ‘NSArray *’ to parameter of type ‘NSLayoutConstraint’

我究竟做错了什么?

最佳答案 addConstraint:方法期望单个约束,但constraintsWithVisualFormat:返回零或更多约束的NSArray.

尝试添加一个.

[self addConstraints:/*your NSLayoutConstraint constraintsWithVisualFormat: call */];

Apple的命名约定通常可以帮助您.请注意,constraintsWithVisualFormat是复数,而addConstraint:是单数(并且addConstraints:是复数).将来使用这些作为您的线索.

点赞