如何在 SwiftUI macOS 代理应用程序中启用使用键盘快捷键粘贴

8

我正在使用Swift 5和SwiftUI创建一个应用程序。该应用程序作为状态栏应用程序运行(LSUIElement为true)。我用SwiftUI创建了一个简单的Preferences窗口,并带有一些TextField

然而,我不知道如何使用Cmd+V启用粘贴到这些字段中。应用程序作为代理,它从未真正激活,因此即使将首选项窗口聚焦,应用程序的菜单栏也不会显示出来(位于状态栏的左侧)。

以下是我创建窗口的方法:

let hostingController = NSHostingController(rootView: PreferencesView())
preferencesWindow = NSWindow(contentViewController: hostingController)
preferencesWindow!.center()
preferencesWindow!.makeKeyAndOrderFront(nil)
NSApp.activate(ignoringOtherApps: true)

当我尝试使用 Cmd+V 粘贴时,我听到了 macOS 的“禁止”提示音。右键单击该字段可让我从弹出菜单中选择粘贴选项。

1个回答

0

我有同样的烦恼,后来发现这些快捷方式是由“编辑”菜单项提供的。所以你可以尝试在 Main.storyboard 中恢复默认菜单。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接