Cocoa 自动布局向后兼容吗?
通过 OS X 10.7、Lion 上的 Xcode 4,Apple 引入了一种奇妙的新方法来处理基于 NIB 的 UI 元素的空间关系:自动布局。
在自动布局的文档页面顶部,Apple 声明:
注意:自动布局仅在 Mac OS X v10.7 及更高版本中可用。如果您在 Mac OS X v10.6 中运行 Xcode 4,则自动布局不可用。
乍一看,人们会认为自动布局无法针对 Lion 之前的系统进行编译或运行。然而,当我重新阅读通知和文档页面时,Lion 之前的系统上的 Xcode 中似乎不存在自动布局。
那么,在基于 Lion 的机器上编译后的自动布局是否可以在 Lion 之前的机器上工作?我想苹果可以通过将自动布局编译成类似 spring/strut 的设置来实现这一点。
With Xcode 4 on OS X 10.7, Lion, Apple introduced a fantastic new way of handling the spacial relationships of NIB-based UI elements: Auto Layouts.
At the top of the doc page for Auto Layouts, Apple declares:
Note: Auto Layout is available only in Mac OS X v10.7 and later. If you are running Xcode 4 in Mac OS X v10.6, Auto Layout is not available.
At first glance, one would assume that Auto Layouts either won't compile for, or run on, pre-Lion systems. However, as I reread the notice, and doc page, it began to look like Auto Layouts just don't exist in Xcode on pre-Lion systems.
So do Auto Layouts, after being compiled on a Lion-based machine, work on pre-Lion machines? I would imagine that Apple could've accomplished this by compiling down the Auto Layouts into spring/strut-like settings.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
在 10.7 之前的系统上,AppKit.framework 中不存在自动布局“引擎”,因此您之前的想法是正确的:使用自动布局的应用程序不会在 10.6 及更早版本上运行。
The autolayout "engine" doesn't exist in AppKit.framework on systems prior to 10.7, so your earlier thinking was correct: apps using autolayout will not run on 10.6 and earlier.