【发布时间】:2014-10-23 03:52:41
【问题描述】:
我一直在寻找 Auto Layout 和 Auto Resizing 之间的正确区别,但没有找到确切的答案。我可以在哪里使用“自动布局”以及在哪里使用“自动调整大小”?任何帮助都将是感谢的一部分。
【问题讨论】:
标签: ios xcode user-interface autoresize ios-autolayout
我一直在寻找 Auto Layout 和 Auto Resizing 之间的正确区别,但没有找到确切的答案。我可以在哪里使用“自动布局”以及在哪里使用“自动调整大小”?任何帮助都将是感谢的一部分。
【问题讨论】:
标签: ios xcode user-interface autoresize ios-autolayout
正如 Matt Neuburg 在his book 中所说:
自动调整大小是在概念上分配子视图“弹簧”的问题 和支柱。”弹簧可以伸展;支柱不能。弹簧和支柱 可以在内部或外部分配。因此您可以指定(使用 内部弹簧和支柱)是否以及如何调整视图大小, 和(使用外部弹簧和支柱)视图是否以及如何 重新定位。
和
自动布局,取决于视图的约束。一个约束(一个 NSLayoutConstraint 的实例)比 "autoresizingMask" 它是一个具有数值的成熟对象,并且 可以描述任意两个视图之间的关系(不仅仅是一个子视图 及其superview)。
【讨论】:
我推荐观看 WWDC 2012 会议https://developer.apple.com/videos/wwdc/2012/?id=202
自动布局是一种定义动态 GUI 的新方法。之前,我们有自动调整大小的掩码,它描述了在调整其父视图大小时子视图将如何调整大小或移动。使用自动布局,您可以轻松完成相同的操作,也可以轻松完成更复杂的 GUI。
自动调整大小是在其层次结构中布局视图的最有用的属性之一。 通过此链接。
http://www.techpaa.com/2012/05/understanding-uiview-autoresizing.html
【讨论】:
AutoResizing : Autoresizing 意味着视图的内容将如何适应视图。这可能取决于视图的自身内容。
AutoLayout: AutoLayout 是指外部约束,例如视图的位置,其他相邻组件支持的视图大小。
AutoLayout 触发 AutoResizing 任务,对于自动调整活动,自动布局强制或正常更改或打破与相应视图相关的视图的默认约束(如果需要)。
【讨论】:
在带有约束的超级视图中使用自动布局[这有助于当视图中的空间因不同设备(例如 3.5 或 4 英寸视网膜)而发生变化时] 并使用自动调整大小来调整视图中的 GUI 对象 [this在设备方向期间视图中的空间发生变化时提供帮助]
【讨论】: