我正在创建一个Mac菜单栏应用程序,希望在用户切换可见的桌面空间(包括外部监视器)时得到通知。这是一个仅菜单栏应用程序(即没有实际窗口)。
我看到了一些类似的问题,但是没有一个答案适用于我。大多数答案都涉及观察
我尝试在我的AppDelegate中观察它,在
是否有什么我错过的地方?任何帮助将不胜感激。
我看到了一些类似的问题,但是没有一个答案适用于我。大多数答案都涉及观察
NSWorkspace
的通知中心上的NSWorkspaceActiveSpaceDidChangeNotification
。我尝试在我的AppDelegate中观察它,在
applicationDidFinishLaunching
中我有以下代码:
NSWorkspace.sharedWorkspace().notificationCenter.addObserver(self,
selector: Selector(spaceChanged()),
name: NSWorkspaceActiveSpaceDidChangeNotification,
object: nil)
在我的spaceChanged()
函数中,我只是为了调试目的打印一些内容到控制台。然而,无论何时我改变桌面空间,我都没有收到通知。是否有什么我错过的地方?任何帮助将不胜感激。
NSWorkspace.shared.notificationCenter.addObserver( self, selector: #selector(spaceChanged), name: NSWorkspace.activeSpaceDidChangeNotification, object: nil )
- appsmatics