1

我一直在使用故事板开发一个 macOS 应用程序,该故事板定义了一个带有工具栏和拆分视图的主窗口。它是用 Swift 3 编写的——我还没有迁移到 Swift 4。splitview 有一个用于图形的窗格和另一个用于文本日志的窗格;两者都滚动。我对这三个都有视图控制器;这两个附属场景通过关系与拆分视图相关联。直到今天我安装了 Xcode 9 beta 4。(是的,我现在在垃圾箱里有 beta 3 并且可以恢复)

清理构建文件夹并编译后,出现错误

NSSplitViewController's 'view' outlet should not point to its NSSplitView; use the 'splitView' outlet instead 

然而,NSSplitViewController 子类没有定义出口(它的两个子类安排在他们的 viewDidLoad 方法中告诉它它们的存在)。此外,我似乎无法在该窗口与其控制器之间创建一个出口,该出口首先会产生错误。

我现在还注意到,在拆分视图控制器的场景中绘制的拆分是水平的,而不是像以前那样垂直。我没有办法改变这种情况。(我无法运行该应用程序,所以我不知道它是否重要。我怀疑它确实如此。)

最终结果是我看不到错误试图告诉我什么。该错误会阻止应用程序构建和运行,而在 beta 3 中它可以工作。我希望有人可以解释 Xcode 告诉我的内容以及如何修复它。

4

1 回答 1

0

我确实在自己的故事板中解决了这个问题。在 outlet 窗口中,我看到 view outlet 确实分配给了NSSplitView. 我删除了它。它也被分配给 splitView 插座,因此更改似乎没有任何影响。警告消失了,然后我的项目确实构建了。

我不知道这是否总是这样并且编译器更新已更改,或者是否以某种方式无意中设置了不同的设置。在任何情况下都是有意义的,NSSplitview应该将其分配为 splitView 出口,而不是视图出口。

于 2017-09-24T13:18:33.377 回答