2

我的应用程序必须在 OS X 10.6 到 10.9 上运行。主窗口 xib 的部署目标为 10.6(与应用程序本身相同)。主窗口笔尖也将“全屏”属性设置为“主窗口”。

由于 10.6 不支持NSWindowCollectionBehaviorFullScreenPrimary,XCode 5 预计会给出警告Attribute Unavailable。10.7 之前的 OS X 上的全屏行为

问题

  1. 您能否忽略此警告并为 10.6 安全构建,而不会在 nib 实例化时崩溃?
  2. 您可以通过将 xib 部署目标设置为 10.7 来消除此警告,但 nib 是否仍会在 10.6 上运行?换句话说,10.7 的 xib 部署目标不会切断对 10.6 的支持吗?
  3. “正确”的解决方案似乎是将部署目标保持在 10.6,取消设置 xib 中的全屏属性,如果在 10.7+ 上运行,则改为在运行时以编程方式设置它。这是您应该始终处理这种情况的方式吗?
  4. 一般来说,当 nibs 中指定的属性在运行时不存在时,OS X 如何回退?我找不到直接的答案。谢谢你。
4

1 回答 1

0

部署目标是可以加载 xib 文件的最早 OS 版本。要回答问题 2,将部署目标设置为 10.7 会切断对 10.6 的支持。nib 文件不会在 10.6 上运行。

您在问题 3 中列出了支持 10.6 及更高版本的解决方案。我没有问题 4 的答案。

于 2013-10-08T18:33:45.270 回答