Iphone X 的纵横比问题

Aspect ratio issues with Iphone X

我的大部分 UI 都是在故事板上通过创建具有宽高比的约束设置来开发的。现在我发现在 iphone X 上,所有带比率的约束看起来都被拉伸了并且不正确。设置纵横比最适合所有 iphone 尺寸的约束的最佳解决方案是什么?

我不确定其他人为此做了什么,但我为解决这个问题所做的是设置 size(高度和宽度)约束而不是 aspect ratio 约束。这可能会导致它在不同屏幕上的尺寸略有不同,但纵横比保持不变。

例如, 不要在方形视图上设置 aspect ratio 约束,而是尝试 将 heightwidth 的约束设置为相等的值,例如,250250.

您混淆了 "aspect ratio" 和 "percentage"。

如果您希望您的背景图片在尺寸更改时看起来 "stretched",您需要为其指定宽高比 + 百分比尺寸,或者使用不同的图片。

例如:

  • iPhone SE 屏幕是 320 x 568,因此 50% 高度(和 100% 宽度)的图像将是 320 x 284

  • iPhone 8 屏幕是 375 x 667,因此高度为 50%(宽度为 100%)的图像将是 375 x 333.5

  • iPhone X 屏幕是 375 x 812,因此高度为 50%(宽度为 100%)的图像将是 375 x 406

很明显,你的图片不能是320 x 284375 x 333.5 375 x 406同时。

不是将图像视图设置为屏幕高度的 50%,您可能需要将其限制为屏幕的整个 宽度 并给它一个 Aspect Ratio约束。它不会在每个设备上覆盖相同的百分比高度(不要忘记 iPad 尺寸),但看起来不会拉伸。