由于0大小的容器视图,iOS自动布局不满意约束

时间:2015-05-15 05:53:45

标签: ios autolayout containers nslayoutconstraint

我在带有约束的容器视图中放置了一个视图:

@"H:|-15-[myView]-15-|"

当创建容器视图时,其大小为零,并且代码崩溃,因为它不能满足左/右边缘与零大小容器的左/右边缘分开15个点的约束

有没有办法优先考虑这种限制,还是有更好的方法来做到这一点?假设使用子视图创建容器时不能有框架。

谢谢!

1 个答案:

答案 0 :(得分:1)

是的,您可以将优先级设置为约束。

你必须添加" @ value"在约束常数之后如此:

@"H:|-15@750-[myView]-15-|"

  

优先级。约束具有优先级。在具有较低优先级的约束之前满足具有较高优先级的约束。默认优先级是必需的(NSLayoutPriorityRequired),这意味着必须完全满足约束。布局系统尽可能接近满足可选约束,即使它不能完全实现它。   优先级允许您表达有用的条件行为。例如,它们用于表示某些控件的大小应始终适合其内容,除非更重要的事项应优先考虑。有关优先级的更多信息,请参阅NSLayoutPriority。