gpt4 book ai didi

cocoa - 如何获得像 Mail.app 和 Xcode 中那样的两行工具栏?

转载 作者:行者123 更新时间:2023-12-03 16:10:50 26 4
gpt4 key购买 nike

我试图在我的应用程序中的 NSToolbar 之后添加一个“第二行”,它仍然是标题栏的一部分。例如,Mail 在 NSToolbar 下方有一条细细的灰色分隔线,下面有一些额外的项目。非常具体地,当窗口进入全屏模式时,第二个“行”在系统菜单栏下向下滑动时保持附加到标题栏。 Xcode 也有类似的故事。

enter image description here enter image description here enter image description here enter image description here

我尝试将 NSWindow 设置为纹理并将第二行控件直接放置在窗口的内容 View 中。虽然这在窗口模式下看起来大多是正确的,但当工具栏在全屏模式下向下滑动时,这些控件当然不会显示在工具栏上。那么我怎样才能实现与 Mail 和 Xcode 相同的行为呢?我查看了很多工具栏自定义代码,但没有一个真正涵盖了这种特定情况。

enter image description here enter image description here

最佳答案

fullScreenAccessoryView 在 macOS 10.10 中已弃用

为了在最新版本的 macOS 中执行此操作,请在 NSWindow 上使用 addTitlebarAccessoryViewController 方法并传入 NSTitlebarAccessoryViewController 的子类。

例如:

NSTitlebarAccessoryViewController *accessoryViewController = [[NSStoryboard storyboardWithName:@"Main" bundle:nil] instantiateControllerWithIdentifier:@"AccessoryViewController"];
[self.mainWindowController.window addTitlebarAccessoryViewController:accessoryViewController];

关于cocoa - 如何获得像 Mail.app 和 Xcode 中那样的两行工具栏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13712287/

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