我已经实现了委托(delegate)方法来在 View 折叠时隐藏分隔线,效果很好。问题是在启动时,如果 View 折叠起来,自动保存会使其保持折叠状态,但不会询问我是否要隐藏分隔线,因此它们默认显示,看起来很糟糕。
如何强制调用此委托(delegate)方法,如果没有正确的方法,我有什么选择,伪造窗口大小调整?
我唯一的解决方案是:
windowSplitView.subviews[0].hidden = !windowSplitView.subviews[0].hidden
windowSplitView.subviews[0].hidden = !windowSplitView.subviews[0].hidden
最佳答案
解决方案是对隐藏标题时每次启动时窗口尺寸不断增大的问题使用相同的修复方法:https://openradar.appspot.com/18510665
您必须从 Interface Builder (IB) 中删除自动保存名称,并在加载窗口并设置框架后以编程方式执行此操作:
override func windowDidLoad() {
super.windowDidLoad()
//...
splitView.autosaveName = "YourAutosaveName"
//...
}
关于swift - 如何获取NSSplitView splitView :shouldHideDividerAtIndex:to be called at startup?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35158945/