我有一个约束错误,
我想要做的是"视图居中,视图上有20个边距,最大宽度为320"
因此,在iPad上,视图不会被拉伸,但在较小的设备上,视图可以小于320宽度,并且具有20点的边距.
但是,使用这些规则会给我一个错误,可能是因为我说边距可能> = 20,宽度<= 320,并且视图不知道如何匹配.
我尝试使用优先级,但我不确定它是如何工作的,我什么也得不到.
如何仅使用一个视图及其约束来实现所需的效果?
正如您所推断的那样,autolayout需要知道在发生冲突时它应该破坏哪个约束,这是由优先级完成的.但是,您有另一个冲突,因为前导/尾随和宽度约束都是相对的.这意味着autolayout无法确定视图的宽度.
将前导/尾随约束更改为= 20并将其优先级设置为999,以便可以在更宽的设备上中断它们.这将允许确定宽度并消除您的冲突.