NSWindow - 隐藏标题栏,同时使用 Cocoa/AppKit 保留控制按钮(不是 SwiftUI)
NSWindow - hiding titlebar while keeping control buttons with Cocoa/AppKit (NOT SwiftUI)
我正在使用 XCode 构建一个 macOS (OSX) 应用程序,我正试图摆脱 [=51] 顶部的标题栏(也许它叫做工具栏?) =] 同时仍然保留 3 个控制按钮(关闭、最小化 和 全屏)。
到目前为止,我只能在保留按钮的同时隐藏此栏,但看起来该栏不知何故仍然存在。我的 NSTableViews
将其识别为栏并在行和 headers.
之前创建某种透明的安全区域
这是我目前得到的:
这就是我想要的:
请注意,该应用程序使用的是 UI 工具包和故事板 - 而不是 SwiftUI。左边的绿色区域是 NSSplitView
的侧边栏。只是为了让你理解结构。
我现在为 NSWindow
设置了这些属性:
- 部署目标:macOS 12
- XCode: 13.1
- Swift: 5
谢谢!
您可以通过将 window 的标题栏设置为透明、隐藏其标题文本并将其外观设置为全尺寸内容视图来完成您正在寻找的内容。
如果您想让 table 视图忽略顶部插图,您需要将其封闭的滚动视图 automaticallyAdjustsContentInsets
属性 设置为 false
scrollView.automaticallyAdjustsContentInsets = false
我正在使用 XCode 构建一个 macOS (OSX) 应用程序,我正试图摆脱 [=51] 顶部的标题栏(也许它叫做工具栏?) =] 同时仍然保留 3 个控制按钮(关闭、最小化 和 全屏)。
到目前为止,我只能在保留按钮的同时隐藏此栏,但看起来该栏不知何故仍然存在。我的 NSTableViews
将其识别为栏并在行和 headers.
这是我目前得到的:
这就是我想要的:
请注意,该应用程序使用的是 UI 工具包和故事板 - 而不是 SwiftUI。左边的绿色区域是 NSSplitView
的侧边栏。只是为了让你理解结构。
我现在为 NSWindow
设置了这些属性:
- 部署目标:macOS 12
- XCode: 13.1
- Swift: 5
谢谢!
您可以通过将 window 的标题栏设置为透明、隐藏其标题文本并将其外观设置为全尺寸内容视图来完成您正在寻找的内容。
如果您想让 table 视图忽略顶部插图,您需要将其封闭的滚动视图 automaticallyAdjustsContentInsets
属性 设置为 false
scrollView.automaticallyAdjustsContentInsets = false