UILocal уведомления не отображаются - PullRequest
0 голосов
/ 22 февраля 2012

Я не могу показать свои локальные уведомления.Я тестирую на iphone.Они не отображаются вообще, и сгенерированная дата, кажется, находится за час до ввода даты.19 становится 18 и так далее.

Как включить эти локальные уведомления на 7 с учетом часового пояса пользователя?

   NSCalendar* myCalendar = [NSCalendar currentCalendar];
    NSDateComponents* components = [myCalendar components:NSYearCalendarUnit|NSMonthCalendarUnit|NSDayCalendarUnit fromDate:[NSDate date]];
    [components setHour: 19];
    [components setMinute:00];
    NSDate *todayAt7 = [myCalendar dateFromComponents:components];



UILocalNotification *dailyNotification = [[UILocalNotification alloc] init];
dailyNotification.fireDate = todayAt7; // set this to 7pm 
dailyNotification.timeZone = [NSTimeZone defaultTimeZone]; 
dailyNotification.repeatInterval = NSDayCalendarUnit;
dailyNotification.soundName = UILocalNotificationDefaultSoundName;
dailyNotification.alertBody = @"You need to enter data for today.";

1 Ответ

1 голос
/ 22 февраля 2012

Первая проблема заключается в том, что при создании экземпляра компонентов вы не запрашиваете компонент часов и минут.Кроме того, вы должны использовать NSCalendar *myCalendar = [NSCalendar autoupdatingCurrentCalendar]; вместо currentCalendar.

Вторая проблема, по крайней мере, вы не показываете код для нее, но вы фактически не планируете объект уведомления.Смотри [UIApplication scheduleLocalNotification:].

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...