未收到NSWorkspace通知

时间:2017-06-10 01:55:17

标签: swift macos

切换应用时,我的功能未执行:

public class ItemObserver: NSObject {

  @objc public func recievedNotification(notification: NSNotification) {
    print(notification.name)
    print("s")
  }
}

let observer = ItemObserver()

NSWorkspace.shared().notificationCenter.addObserver(observer, selector: #selector(ItemObserver.recievedNotification(notification:)), name: .NSWorkspaceDidActivateApplication, object: nil)

2 个答案:

答案 0 :(得分:0)

NSNotificationCenter不会保留观察者:它尽可能使用zeroing weak reference。如果您记录其initdeinit,您会看到它正在立即发布。

强烈提及观察者。

答案 1 :(得分:0)

事实证明,NSNotifications不会同时运行。我进一步向下循环了。