たとえば、ビュー a、b、および c があり、次のようにするとします。
[a setTranslatesAutoresizingMaskIntoConstraints:NO];
[b setTranslatesAutoresizingMaskIntoConstraints:NO];
[c setTranslatesAutoresizingMaskIntoConstraints:NO];
[a addSubview:b];
[a addSubview:c];
[a addConstraint:
[NSLayoutConstraint constraintWithItem:b
attribute:NSLayoutAttributeLeft
relatedBy:NSLayoutRelationEqual
toItem:a
attribute:NSLayoutAttributeLeft
multiplier:1.0
constant:0]];
[a addConstraint:
[NSLayoutConstraint constraintWithItem:b
attribute:NSLayoutAttributeRight
relatedBy:NSLayoutRelationEqual
toItem:a
attribute:NSLayoutAttributeRight
multiplier:1.0
constant:0]];
次に、私はできるはずです:
[a addConstraint:
[NSLayoutConstraint constraintWithItem:c
attribute:NSLayoutAttributeWidth
relatedBy:NSLayoutRelationEqual
toItem:a
attribute:NSLayoutAttributeWidth
multiplier:1.0
constant:0]];
?
代わりに、最後のコマンドを次のように変更すると:
[a addConstraint:
[NSLayoutConstraint constraintWithItem:c
attribute:NSLayoutAttributeWidth
relatedBy:NSLayoutRelationEqual
toItem:a
attribute:NSLayoutAttributeRight
multiplier:1.0
constant:0]];
...その後、すべて正常に動作します。何を与える?