一年前,我看过一些关于自动布局好处的 Apple WWDC 主题演讲,但是当我在现实世界的项目中尝试它们时,我体验到,当你在 Storyboard 上稍微移动一些 UI 元素时,它会打破一半的约束,抵消了自动布局的所有好处。
到目前为止,我一直在非常成功地使用 Springs 和 Struts,并结合 KVO 观察框架路径进行查看,优雅地处理了大部分旋转重新对齐,只需要几行代码。
所以现在随着 iOS 7 的推出,我有一个问题:我能否继续成功地将 Springs & Struts 仅用于 iOS 7 应用程序并避免使用 Auto Layout?还是我这样做会失去什么?学习和掌握在不同场景中使用自动布局的技能对我来说可能需要几天时间,所以我非常感谢一些有争议的建议。
已解决:感谢 Max 的回答,我开始深入研究 Auto Layout;虽然Null
他的回答是正确的——你实际上可以在 iOS 7 上使用 Springs & Struts 而不会遇到太多麻烦,Auto-Layout 很强大。
显然在 Xcode 5 中,修复了以下问题:
要删除约束,您实际上不需要执行古老的 shamanic dance of rain。您删除它并且布局进入警告模式,指示您需要解决的问题以使自动布局工作。
当你移动东西时,你的约束不会改变;仅界面生成器中的视图框架更改。
当 Interface Builder 中的 frame 与使用布局约束计算的 frame 实际不同时,Interface Builder 会用红色虚线指示该元素的运行时 frame。最后它是正确的。谢谢,苹果。
这是 WWDC 2013 会议的链接,演示了如何在 Xcode 5 中利用所有这些内容。您需要苹果开发人员帐户才能查看。
所以我现在的选择是自动布局。谢谢大家。