menu - 我无法在状态栏 macOS 应用程序中使用自定义触控栏

标签 menu macos-sierra nstouchbar

我有一个像状态栏应用程序一样显示的应用程序(在 Info.plist 中“应用程序是代理(UIElement)= YES”)。

我添加了一个带有 Interface Builder 的 TouchBar,并在其上添加了一些 Touch Bar Buttons 项目。问题是自定义触摸栏不显示。

为了使自定义触摸栏显示,我需要将主 WindowController 窗口设为 Is Initial Controller true,不幸的是,通过这样做,应用程序还会播下一个单独的窗口,该窗口的内容与菜单项的弹出窗口相同。

有没有办法为状态栏 macOS 应用程序实现自定义触摸栏?

enter image description here

最佳答案

您是否尝试将 touchBar 分配给您的 NSApplication?
您应该为您的 IB touchBar 分配 IBOutlet,并在运行时分配它。

@property (weak) IBOutlet NSTouchBar *testTouchBar;
[...]
[NSApplication sharedApplication].touchBar = _testTouchBar;

关于menu - 我无法在状态栏 macOS 应用程序中使用自定义触控栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42907393/

相关文章:

android - 选择文本上的 webview 上下文菜单

coredump - 在 macOS Sierra 中为崩溃的进程启用核心转储

macos - 是否可以通过编程访问 macOS 触控栏的控制条?

swift - 在 NSTouchBar 中填充 NSImageView

javascript - 带有自定义图像的触摸栏图标无法在 Electron 中加载

java - 游戏/应用程序菜单作为游戏/应用程序的核心部分

drupal - 如何在 Drupal 7 中打印自定义菜单?

java - android studio项目中没有菜单文件夹

xcode - 格式错误的 mac-o 图像 : symbol table underruns __LINKEDIT

macos - eflogin-helper 在 MacBook Pro 上以高 cpu 持续运行