ios - 使用自动布局在调整大小时平均更改空间

标签 ios xcode ios6 autolayout

如果我的应用程序中有一个 View 包含 3 个 subview (作为示例),它们之间的间距如下:

顶部 - 40 分 - SUBVIEW 1 - 60 分 - SUBVIEW 2 - 80 分 - SUBVIEW 3 - 80 分 - 底部

我了解如何使用自动布局来确保我的每个 subview 保持其高度和宽度,并且我可以让所有内容在 3.5 或 4 英寸 iPhone 屏幕上对齐。


但我不知道我需要做什么样的约束,以便如果它针对 3.5"屏幕对齐,然后转到 4"屏幕,每个间距都会按比例增加(例如 40 点会转到 47、60 到 71、80 到 95 - 或附近)。

这可能吗?或者我是否需要使元素之间的所有间距相等? (如果是这样,我怎样才能让它平均调整大小?)


我是自动布局的新手,所以如果我遗漏了什么,或者没有说清楚我的意思,请告诉我,谢谢。

最佳答案

诀窍是在您的 View 之间不仅添加一个约束,而且添加两个约束。一种是“大于或等于”,另一种是“小于或等于”。 最小尺寸(大于或等于)应为 3.5"显示屏上的间距。 最大尺寸(Less Then or Equal"应该是 4"显示器上的间距。

示例:

顶部 - 40 分 - SUBVIEW 1 - 60 分 - SUBVIEW 2 - 80 分 - SUBVIEW 3 - 80 分 - 底部

顶部 - subview 1: 在 Interface Builder 中选择两者。添加约束“垂直间距”两次。 将 1 设置为大于或等于 40。 将另一个设置为小于或等于 47。

所有 Greater Then 值的总和 + View 的所有高度应为 480 像素 (3.5") 所有 Lesser Then 值的总和 + View 的所有高度应为 568 像素 (4")

关于ios - 使用自动布局在调整大小时平均更改空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14195638/

相关文章:

xcode - 如何在 IBOutlet 断开连接时获得编译器警告

ios - 如何将我的旧应用程序更新到 iPhone 5?

ios - 计算 Cox De Boor 算法的结向量的正确方法是什么?

objective-c - 序列化/存储 UIView 及其 subview

ios - UISearchController 问题 swift ios

ios - 安装插件后 phonegap 应用程序崩溃

ios - 架构 x86_64 的重复符号

iphone - Ios 中 Paypal 集成的初始步骤

iphone - 领英与 OAuth2 ios

objective-c - DynamoDB - 项目未上传