2

当我从 dateTimePicker.date 获取时间/日期时,通知工作,但是当我使用 dateFromString 触发日期时,通知不起作用。

编码:

-(IBAction)alarmSetButtonTapped:(id)sender {

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
dateFormatter.locale = [NSLocale systemLocale];
dateFormatter.timeStyle = NSDateFormatterShortStyle;
dateFormatter.dateStyle = NSDateFormatterShortStyle;

NSString *tmp = @"2012-09-05 10:19";
[dateFormatter setDateFormat: @"yyyy-MM-dd HH:mm"];
[dateFormatter setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]];

NSDate *dateFromString = [dateFormatter dateFromString: tmp];
NSLog(@"Alarm TMP %@", dateFromString);
[dateFormatter release];


[self scheduleLocalNotificationWithDate:dateFromString];
[self presentMessage:@"Alarm set"];

};

请问你能帮我吗??

编辑:

-(void) scheduleLocalNotificationWithDate:(NSDate *)fireDate {

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

notification.fireDate = fireDate;
notification.alertBody = @"Time to wake up";
notification.soundName = @"clock.mp3";

[[UIApplication sharedApplication] scheduleLocalNotification:notification];

[notification release];
}
4

1 回答 1

7
UILocalNotification *localNotification = [[UILocalNotification alloc] init];

    // Set the fire date/time
    [localNotification setFireDate:yourDate];
    [localNotification setTimeZone:[NSTimeZone defaultTimeZone]];

    localNotification.applicationIconBadgeNumber=1;

    // Setup alert notification
    [localNotification setAlertAction:@"Open App"];
    [localNotification setAlertBody:[randonQuotesDic objectForKey:@"Rajneesh"]];
    [localNotification setAlertBody:@"You had set a Local Notification on this time"];

    localNotification.soundName=UILocalNotificationDefaultSoundName;
    [localNotification setHasAction:YES];      
    UIApplication *app=[UIApplication sharedApplication];
    [app scheduleLocalNotification:localNotification];
于 2012-09-05T08:36:31.477 回答