隐藏 NSWindow 新建标签按钮

Hen*_*rik 1 cocoa tabs nsdocument nswindow macos-sierra

在 macOS 10.12 中,为 NSDocument 应用程序添加了一个新的标签栏。您可以阻止工具栏出现(请参阅如何禁用 Sierra 应用程序中的“显示标签栏”菜单选项?)。但是如何删除用于添加新 Windows 的“+”按钮?

102*_*4jp 6

根据 AppKit 发行说明,在 NSDocumentController 子类中返回false响应newWindowForTab(_:)操作消息会禁用选项卡栏中的“+”按钮。

override func responds(to aSelector: Selector!) -> Bool {

    if #available(OSX 10.12, *) {
        if aSelector == #selector(NSResponder.newWindowForTab(_:)) {
            return false
        }
    }

    return super.responds(to: aSelector)
}
Run Code Online (Sandbox Code Playgroud)

请参阅macOS 10.12AppKit 发行说明中的“新建按钮”部分。