gpt4 book ai didi

cocoa - 全屏隐藏 NSToolbar

转载 作者:行者123 更新时间:2023-12-03 17:01:03 28 4
gpt4 key购买 nike

我正在制作一个 Cocoa 应用程序,带有隐藏的统一 NSToolbar 和 Titlebar。我通过在窗口 Controller 中添加一个工具栏并设置所有选项以使其不可见并保留 3 个彩色按钮来完成此操作。它在普通窗口中工作得很好,但如果我将此窗口置于全屏模式,它会在顶部显示一个空的工具栏。

如何使该工具栏在全屏下也透明?

这是可能的,因为它在 macOS Mojave 中的新 Mac AppStore 中是如何工作的(有一个隐藏的工具栏,在全屏模式下仍然隐藏,只有当鼠标放在屏幕顶部时才会出现)。

奖励:我已经启用了 isMovableByWindowBackgroundable,但是是否有一个选项可以在双击窗口背景时切换“最大化”操作,就像通常适用于标题栏一样?

图片如下:

How it looks with a transparent toolbar

How it looks in fullscreen, the toolbar is opaque

最佳答案

通过设置 NSWindow 的 delegate 并实现,可以达到与 Mac App Store 相同的效果:

func window(_ window: NSWindow, willUseFullScreenPresentationOptions proposedOptions: NSApplication.PresentationOptions = []) -> NSApplication.PresentationOptions {
return [.autoHideToolbar, .autoHideMenuBar, .fullScreen]
}

这将隐藏全屏状态下的工具栏和菜单栏,仅当鼠标位于屏幕顶部时才会出现。可能需要实现 View 更新才能更新内容,但这是可选的。

关于cocoa - 全屏隐藏 NSToolbar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53173964/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com