NSStackView,两个开发人员,一个在10.10(Xcode 7),一个在10.12(Xcode 8)

时间:2017-01-05 19:20:20

标签: objective-c xcode macos

我的开发人员和我正在开发macOS应用程序。

  • 我在10.12
  • 上运行Xcode 8
  • 他在10.10
  • 上运行Xcode 7
  • 部署目标设置为10.10

我在10.12开发了Xcode 8上的项目。

我在UI的一个部分使用NSStackView。在我进行了一些版本检查之后,应用程序在我的操作系统(10.12)和他的操作系统(10.10)上运行。如果版本> x然后运行(代码)"解决10.11中对NSStackView所做的更改。

在设置"打开..."之后,项目的大部分(除了包含NSStackView的xib之外)将在他的10.10 + Xcode 7中打开。到" Xcode 7.x"。

然而,带有NSStackView的Xib不会。他无法打开它。他也不能编译项目,因为它抱怨:

"The document “ControllerWithStackView.xib” requires OS X 10.11 or later"

我假设xib包含10.11增强的NSStackView的其他信息,而他的旧操作系统和Xcode无法处理。

有没有人对我如何更改内容有任何想法,以便在我使用10.12和Xcode 8时可以继续使用10.10和Xcode 7?由于几个原因,他最好保留现有的操作系​​统。

我的想法:

  • 不要通过界面构建​​器将NSStackView嵌入到xib中。而是通过代码
  • 在控制器中创建它
  • 不要使用NSStackView。虽然它确实可以用于我们的目的(传统的添加/删除/显示/隐藏行为,理想地适合堆栈),但我想我可以使用NSTableView或自定义代码

还有其他选择吗?在Xcode 8中是否有任何魔术设置我可以设置说"嘿,这个堆栈视图应该针对10.10"?

非常感谢人们如何处理此类情况的任何见解。

谢谢你, 埃里克

0 个答案:

没有答案