创建类似1Password的macOS菜单应用程序

时间:2017-10-20 22:33:07

标签: swift xcode macos menubar nsmenu

我正在尝试创建一个macOS菜单栏应用,它将文本字段作为第一项。文本字段将用作搜索栏,用于过滤将在其下方显示的其他项目。

它看起来应该与1password非常相似:

1password

这就是我设法做的事情:

mine

我通过创建一个包含三个项目的Status menu并为菜单中的第一个项目创建自定义视图来完成此任务。

然而,这种方法似乎并没有解决我的问题。在搜索字段中按cmd + A时,焦点会跳转到菜单中的下一个项目。这是NSMenu的默认行为。

所以,我的问题是:这是创建类似1Password的应用程序的正确方法还是有更好的应用程序?

1 个答案:

答案 0 :(得分:2)

基本上这种方法是正确的。

但是你必须明确地捕捉编辑键事件。子类StringBuilder并覆盖NSTextField

performKeyEquivalent