我正在使用Autolayout。我想设置一个视图高度等于另一个视图的宽度。棕色视图的宽度设置为与其父视图成比例的0.3,绿色视图的高度应与棕色视图的宽度相同。 我已经完成了4个视图的设置约束,但4个视图的宽度不一样
请善意引用图像。
我正在使用Autolayout。我想设置一个视图高度等于另一个视图的宽度。棕色视图的宽度设置为与其父视图成比例的0.3,绿色视图的高度应与棕色视图的宽度相同。 我已经完成了4个视图的设置约束,但4个视图的宽度不一样
请善意引用图像。
对象 -
NSLayoutConstraint *constraint = [NSLayoutConstraint
constraintWithItem:greenView
attribute:NSLayoutAttributeHeight
relatedBy:NSLayoutRelationEqual
toItem:brownView
attribute:NSLayoutAttributeWidth
multiplier: 1
constant:0];
斯威夫特
NSLayoutConstraint(item: greenView,
attribute: .Height,
relatedBy: .Equal,
toItem: brownView,
attribute: .Width,
multiplier: 1,
constant: 0.0);
我没有测试代码,以便让我知道,如果有问题
这里Ctrl拖动从greenView
到brownView
并且设置约束Equal Width
。之后,选择Equal Width
约束,并将第一项设置为greenView.height
Like This,最后为您的greenView
设置宽度,X和Y位置。
你好,我应用了你提到的同样的约束到绿色视图,但结果是我以前共享的图像。正如你所看到的绿色视图的高度和棕色视图的宽度不一样 –