我做了一个非常简单的虚拟项目来说明我的问题(在10.12.1上使用Xcode 8.1)。我有一个带有2个选项卡的NSTabViewController的故事板,其中一个是NSSplitViewController。虽然一切看起来都很完美,但我在运行时会看到以下警告:
" TabSplitViewDummy [3615:89221] [布局]检测到< _NSSplitViewItemViewWrapper:0x6000001a0d20>的缺失约束。它无法放置,因为没有足够的约束来完全定义大小和原点。添加缺少的约束,或设置translatesAutoresizingMaskIntoConstraints = YES,并为您生成约束。如果此视图在macOS 10.12及更高版本上手动布局,您可以选择不从覆盖中调用[super layout]。在DETECTED_MISSING_CONSTRAINTS上设置断点以进行调试。此错误仅记录一次。"
我试图为所有视图设置translatesAutoresizingMaskIntoConstraints = YES以及设置约束 - 没有任何效果。到目前为止,我只发现了3件事:
我已经失去了这些日子,我在这里失踪了什么?
非常感谢你的帮助!!!
答案 0 :(得分:1)
几乎失去它后,我终于找到了解决方案。为了防止其他人遇到同样的麻烦,这对我有用:转到故事板并连接"视图" NSTabViewController的出口到"无阴影选项卡视图"。就是这样。你希望Xcode在你设置一个新的NSTabViewController时这样做,但它没有。我并不完全理解为什么,但不知何故,这与NSSplitView的Autolayout混淆了。如果您可以详细解释,请在评论中这样做。