我正在学习 Swift,并希望显示一个简单的用户通知作为测试。
我的构建成功,但没有显示横幅,而是将通知静默添加到通知列表中。我已经验证“请勿打扰”已关闭,我在 AppleScript 中尝试过同样的操作,成功地,有一次在NSUserNotificationAlertStyle
我的应用程序的 info.plist 中摆弄代码时,我得到了一个成功的、非静音的警报(不是横幅)。
然而,这种情况只发生过一次。
我创建了一个新项目,其中包含 Swift 文件且没有情节提要。我的 AppDelegate.swift 包含
import Cocoa
class AppDelegate: NSObject, NSApplicationDelegate {
@IBOutlet weak var window: NSWindow!
func applicationDidFinishLaunching(aNotification: NSNotification?) {
var notification:NSUserNotification = NSUserNotification()
notification.title = "Title"
notification.subtitle = "Subtitle"
notification.informativeText = "Informative text"
notification.soundName = NSUserNotificationDefaultSoundName
notification.deliveryDate = NSDate(timeIntervalSinceNow: 5)
var notificationcenter:NSUserNotificationCenter = NSUserNotificationCenter.defaultUserNotificationCenter()
if let notificationCenter = NSUserNotificationCenter.defaultUserNotificationCenter() {
notificationcenter.scheduleNotification(notification)
}
}
func applicationWillTerminate(aNotification: NSNotification?) {
// Insert code here to tear down your application
}
}
而且我的 info.plist 不包含NSUserNotificationAlertStyle
前面提到的内容,因为我相信这对于横幅来说不是必需的。
最后,是的,应用程序“测试”(因为这是我给它命名的)设置为显示横幅。
总结:我的应用程序成功发出通知,这些将被添加到通知列表中,但不会显示为横幅。(我使用的是 OS X Yosemite 10.10,希望这个问题与 beta 无关)