试图与自动布局对齐

Trying to align with autolayout

我在 viewController

上有这个视图层次结构
view
 | |_____ redView
 |            |______orangeView
 |
 |
 |_______ blackView

blackView 高度始终为 126 磅。 orangeView 的纵横比为 127:155,并且在 redView 内。结果是在 iPhone 3.5".

上看到的

现在我想使这个比例与所有 iPhone 尺寸成比例。在 Photoshop 上做,我希望它是这样的:

注意两件事:orangeView 应保持其纵横比,iPhone 4 是唯一一个 organgeView 高度与 redView 相同的.在其他手机上,相同的是宽度。

因此,我无法弄清楚我应该对 orangeView 应用什么约束以使其按我想要的方式扩展。

我得到的是:

到目前为止,我对 orangeView 的限制是:centerX 到 redView,centerY 到 redView,aspecratio (127:155) 和 redView 的相同高度,但最后一个是不正确的,这也是我为什么我得到了我的结果。如何使橙色视图在所有设备上水平或垂直扩展到最大,保持其纵横比并继续完全位于红色视图区域内?

我认为你可以通过将橙色视图的宽度和高度设置为等于红色视图来做你想做的,但优先级较低(我使用了 250)。此外,您还需要一个说明橙色视图 <= 优先级为 1000 的红色视图的宽度(否则橙色视图在宽度方向上超出红色视图的边界)。

所以,对superview说等宽和等高的优先级都是250。