【发布时间】:2015-11-18 16:35:50
【问题描述】:
我的观点适合 iphone6 但不适合 iphone4。我的直接反应是以编程方式检测正在使用的 iPhone 并相应地调整字体大小和按钮大小,但使用大小类和自动布局,这不再是正确的,这同样适用于创建多个故事板。
我已经设置了自动布局约束并激活了大小类。有没有办法使用界面生成器来解决这个问题,而不是手动编码每个视图以适应每个特定的设备?
iPhone 4s 和 6s 屏幕截图
约束
我正在使用容器和多个 viewController,这可能会使事情变得复杂。
【问题讨论】:
-
您应该可以使用自动布局来做到这一点。我在您的屏幕截图中看到的唯一问题是底部的电话图像。在自动布局中设置纵横比和顶部和底部空间,它会相应地调整大小。
-
@MSU_Bulldog 当我尝试这样做并将我的文本发送到屏幕外时,它似乎忽略了我的超级视图垂直空间限制。
-
如果我确实设法将图像压碎,字体大小不会在没有代码的情况下保持不变吗?
-
您必须有一些冲突的约束。删除那些不是蓝色的(蓝色的浅色阴影),因为它们甚至没有被使用。您需要做一些事情来修复您的约束。我的建议是首先为标签上的字体添加 sizeToFit 方法。并且它不会将图像压扁,它会调整其大小以保持其相同的纵横比,但会降低高度和宽度以适应容器。
-
@MSU_Bulldog 所有的行都是蓝色的,我启用了自动缩小字体。我已经用更多可能相关的信息更新了我的问题。如图所示,我正在使用每个都有自己的视图控制器的容器。
标签: ios autolayout constraints