相对于VFL中的超视图,UIView的相对大小(高度/宽度)

时间:2016-06-28 01:28:38

标签: ios objective-c ios-autolayout nsautolayout visual-format-language

有没有办法在VFL约束中设置UIView相对于其超视图的相对大小(高度/宽度)?

我有以下约束,我想使用7.5%大小的scrollView使infoView居中。我目前的限制使它具有相同的大小。

[self.farmScrollView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"H:[lastView]-10-[infoView(==_scrollView)]"
                                                                                    options:0
                                                                                    metrics:nil
                                                                                      views:@{@"lastView":lastView, @"infoView":infoView, @"_scrollView":_scrollView}]];

1 个答案:

答案 0 :(得分:0)

VLF对当前的实施有一些限制;一些更值得注意的事情很重要:

  • 观点中心
  • 使用约束的乘数组件

由于VFL创建多个约束并仅返回未命名约束的数组,因此无法通过格式字符串设置乘数。

注意:您可以循环遍历constraintsWithVisualFormat方法返回的每个约束,但您必须依次处理它们中的每一个以确定NSLayoutAttribute,以便您可以正确设置乘数。但即使这样,你仍然必须替换那个约束,因为乘数不是可变的。

来自here