2

我已经通过了一些关于大小类的教程,但我仍然无法弄清楚一件事。

iPhone 5、iPhone 6 和 iPhone 6 Plus 的屏幕纵横比完全相同,所以我希望它们使用相同的内容布局。说同样的话,我的意思是与屏幕的宽度和高度成正比。

但!我找不到让所有 iPhone 都成比例的方法!

只有几个真正支持比例的约束:“纵横比”、“相同宽度”+“乘数”、“相同高度”+“乘数”

约束,例如Leading Edges,Horizo​​ntal Center In Container,所有Pin约束都以逻辑点的绝对值操作,所有iPhone的屏幕在逻辑点上都有不同的大小;因此我无法在所有 iPhone 上获得相同的图片。

更新

我正在添加一张图片来解释我想要实现的目标:

在此处输入图像描述

4

3 回答 3

2

如果您想如此糟糕地使用更大的屏幕,您可以简单地不包含 4.7" 和 5.5" 设备的启动文件或启动图像,它们只会使用放大的 4" 布局。

但请不要这样做。屏幕可能具有相同的纵横比,但它们的大小不同,并且以这种方式处理它们会导致糟糕的用户体验。

于 2014-10-17T16:02:59.753 回答
1

我有一个类似的问题,并通过根据屏幕高度(或宽度)测试图像来解决它,例如:

//iphone 5
if UIScreen.main.bounds.size.height == 568.0 {
// your code here
}

iphone屏幕高度如下:

苹果手机 5 = 568.0

iPhone 6/6s/7 = 667.0

iphone 6/7 plus = 736.0

于 2016-12-09T15:27:02.003 回答
-1

检查我为您制作的这个示例项目。

假设你有一个按钮,然后按照我下面提到的步骤使按钮的高度、宽度和位置与父视图成比例。

  1. 给你的按钮纵横比。
  2. 给定宽度等于父视图的宽度。
  3. 在容器中添加约束中心水平并在容器中垂直居中。
  4. 选择您的按钮,然后转到尺寸检查器并设置宽度的乘数(例如 0.3 或 0.4 等)。
  5. 然后将乘数设置为“将中心 X 对齐到..”(如果您希望您的按钮位于中心的左侧,则将乘数设置为低于 1,例如 0.8、0.7、0.5 等如果您希望您的按钮位于中心的右侧然后将乘数值设置为大于 1,如 1.2 等)。
  6. 设置“将中心 y 对齐到..”的乘数值,如步骤

一切都完成了..只需运行并检查。

希望这会帮助你。

于 2017-07-05T07:51:44.220 回答