我是 OSX 开发的新手,我正在制作一个应用程序,它会在发生某些事情时触发通知。但是当应用程序是关键应用程序时,它不会显示通知,因为它是默认行为。即使应用程序是关键应用程序,我也想向他们展示。然而,我只找到了用 Objective-c 编写的解决方案,但现在我正在使用 Swift。我想知道如何用 Swift 实现它。
问问题
3046 次
1 回答
15
为确保始终显示通知,您需要设置委托NSUserNotificationCenter
并实现userNotificationCenter(center:shouldPresentNotification:) -> Bool
. 文档说这条消息是
当用户通知中心决定不展示您的通知时发送给委托人。
您可以在您选择的任何类中实现委托。这是一个例子:
class AppDelegate: NSObject, NSApplicationDelegate, NSUserNotificationCenterDelegate {
func applicationDidFinishLaunching(aNotification: NSNotification) {
NSUserNotificationCenter.defaultUserNotificationCenter().delegate = self
}
func userNotificationCenter(center: NSUserNotificationCenter, shouldPresentNotification notification: NSUserNotification) -> Bool {
return true
}
于 2015-02-24T22:24:21.177 回答