我创建了一个具有以下约束的矩形:
我虽然如果我使用width >=250
to将优先级设置为约束999
,那么宽度equal == 200
将适用于小型设备,并且width >= 250
于大型设备。
但它不起作用。我阅读了文档:
在解决了所需的约束之后,Auto Layout 尝试按照从高到低的优先级顺序解决所有可选的约束。如果它无法解决可选约束,它会尝试尽可能接近所需的结果,然后移动到下一个约束。
这种不平等、平等和优先级的组合为您提供了大量的灵活性和权力。通过组合多个约束,您可以定义随着用户界面中元素的大小和位置变化而动态适应的布局。
将应用约束的优先级以解决两个不同约束之间的冲突。将应用具有更高优先级的约束来修改框架的视图。因此,您应该有另一个视图或使用超级视图将优先级应用于约束。
这是一个很好的答案,解释了阻力优先级:
Cocoa Autolayout:内容拥抱 vs 内容压缩阻力优先