4

相当简单,我有一个应该发送通知的应用程序,但如果应用程序位于最前面,它就不会这样做。从 NSUserNotificationCenter 类参考:

用户通知中心保留决定是否将传递的用户通知呈现给用户的权利。例如,如果应用程序已经在最前面,它可能会抑制通知(委托可以覆盖此操作)。

据我所知,它与userNotificationCenter:shouldPresentNotification:NSUserNotificationCenterDelegate 协议参考中显示的方法有关,但我不知道如何实现它。我已经将我的课程设置为 NSUserNotificationCenterDelegate 所以不是这样。

有任何想法吗?

编辑:在我设置为 NSUserNotificationCenterDelegate 的类中,我使用它来尝试覆盖原始方法,如果应用程序位于最前面,则默认为 NO:

- (BOOL)userNotificationCenter:(NSUserNotificationCenter *)center shouldPresentNotification:(NSUserNotification *)notification {
return YES;
}

但什么也没有发生。

4

1 回答 1

5

NSUserNotificationCenter *center = [NSUserNotificationCenter defaultUserNotificationCenter]; [中心日程通知:通知];center.delegate = 自我;

  • (BOOL)userNotificationCenter:(NSUserNotificationCenter *)center shouldPresentNotification:(NSUserNotification *)notification {return YES;}
于 2015-09-17T07:38:17.100 回答