Frage

Es tut mir leid, wenn dies eine absolute Noob Frage, aber ich kann das eine nicht herausfinden, aus der Dokumentation oder anderen Stapel Fragen -

Wie kann ich ein NSDate Objekt 10:00 GMT eingestellt? Der Grund, warum ich frage, ist dies - ich jeden Tag ein localnotification auftreten, um 10:00 Uhr GMT einstellen möchten.

Ich denke, die folgende ist auf dem richtigen Weg:

    NSDateComponents *comps = [[NSDateComponents alloc]init];
[comps setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"UTC"]];

[comps setYear:2011];
[comps setMonth:1];
[comps setWeek:1];
[comps setDay:1];
[comps setHour:10];
[comps setMinute:52];
[comps setSecond:0];

NSCalendar *gregorian = [[NSCalendar alloc]initWithCalendarIdentifier:NSGregorianCalendar];

NSDate *date = [gregorian dateFromComponents:comps];
[comps release];

UILocalNotification *notif = [[UILocalNotification alloc]init];

notif.fireDate = date;
notif.timeZone = [NSTimeZone timeZoneWithAbbreviation:@"UTC"];
notif.alertBody = @"New Challenges are available in Halo: Reach.\n\n Give them a look over with Halo Reach Challenges!";
notif.alertAction = @"Show Me";
notif.applicationIconBadgeNumber = 5;
notif.repeatInterval = NSDayCalendarUnit;

[[UIApplication sharedApplication] scheduleLocalNotification:notif];
[notif release];

Leider ist dies nicht ausgelöst. Jede Hilfe wäre sehr dankbar:)

War es hilfreich?

Lösung

Solange Ihre Anwendung läuft, wird die Meldung direkt an Ihre Anwendung gesendet. Sie werden einen Handler einrichten müssen (in AppDelegate) und die Anzeige der Nachricht selbst. Wenn die App nicht läuft, sollte die Meldung angezeigt werden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top