Swift & NSUserNotification - Ingen banner eller varsel, men er stille lagt til varslingsliste

stemmer
10

Jeg lærer Swift og ønsket å vise et enkelt brukergrensesnitt varsling som en test.
Min build er vellykket, men ingen banner vises i stedet meldingen er stille lagt til listen av meldinger. Jeg har bekreftet 'Ikke forstyrr' er av, jeg prøvde det samme i Applescript, hell og en gang når fikle rundt med NSUserNotificationAlertStyleog koden i Info.plist av søknaden min, fikk jeg en vellykket, ikke-stille varsling (ikke en banner ).
Men dette skjedde bare én gang.

Jeg har laget et nytt prosjekt, med Swift-filer og uten storyboards. Min AppDelegate.swift inneholder

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
    }


}

Og min Info.plist ikke inneholder NSUserNotificationAlertStylenevnt tidligere, for dette burde ikke være nødvendig for bannere, tror jeg.

Til slutt, ja, søknad test (for det er det jeg har kalt det) er satt til å vise bannere, som sådan. skjermbilde
Oppsummert: Min programmet gjør suksess varslinger, og disse vil bli lagt til listen over varsler, men ikke vist som et banner. (Jeg bruker OS X Yosemite 10.10. Jeg håper denne saken har ingenting å gjøre med beta)

Publisert på 14/08/2014 klokken 06:15
kilden bruker
På andre språk...                            


1 svar

stemmer
21

Noen meldinger vises ikke dersom søknaden er forgrunnen / aktive programmet på det tidspunkt underretning er levert. Se NSUserNotification's presentedeiendom for mer info.

For eksempel, når du er i iTunes og en ny sang begynner å spille, du allerede se hvilken sang som spilles, og det er ikke behov for en banner som skal vises.

Merk at du kan fortsatt få beskjed når en melding er levert (og sjekk presented) ved å tilby en delegat tilNSUserNotificationCenter , herunder overordnede presentasjonen atferd ved å implementere userNotificationCenter:shouldPresentNotification:.

Svarte 14/08/2014 kl. 06:45
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more