iOS: вызов метода в определенное время - PullRequest
2 голосов
/ 09 февраля 2012

Я пытаюсь вызвать метод в это время: 00:01 AM вот мой код, но я не могу найти проблему, почему этот код не вызывает мой метод.

- (BOOL)date:(NSDate *)date hour:(NSInteger)h minute:(NSInteger)m {

    NSCalendar *calendar = [[NSCalendar alloc]initWithCalendarIdentifier:currentCalendar];

    NSDateComponents *componets = [calendar components:(NSHourCalendarUnit | NSMinuteCalendarUnit )fromDate:[NSDate date]];
    if ([componets hour ] == h && [componets minute] == m) {

        return YES;
    }
    return NO;
}



- (void)updateNewDate {

    if ([self date:[NSDate date] hour:4 minute:49]) {

        label.text = @"oyooy";
    }
}

- (void)viewDidLoad {

[self updateNewDate];
}

Если у вас есть какие-либо другие методы, скажите, пожалуйста.

Ответы [ 2 ]

2 голосов
/ 09 февраля 2012

На самом деле ваш код работает нормально, но требует обновления ... например, вы можете использовать NSTimer обновить ваш метод:

[NSTimer scheduledTimerWithTimeInterval:10 target:self selector:@selector(updateNewDate) userInfo:nil repeats:YES];
2 голосов
/ 09 февраля 2012

Местное оповещение - путь ...

EDIT ... Второй способ - получить текущее время, когда приложение запускается, и найти время до следующей полуночи, а затем запустить таймер для срабатывания после этого интервала времени. надеюсь, это поможет.

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