2013-04-24 2 views
0

Мне нужно мое приложение для запуска метода в определенное время суток, я думаю, что лучшим способом было бы настроить уведомление, когда оно получило бы это время. Раньше я использовал NSNoticationCenter, но я не уверен, как настроить его на время суток.NSNotication в момент времени

Редактировать: Я собираюсь по-другому использовать NSTimer. Вот мой код

NSCalendar* myCalendar = [NSCalendar currentCalendar]; 
NSDateComponents* components = [myCalendar components:NSYearCalendarUnit|NSMonthCalendarUnit|NSDayCalendarUnit 
              fromDate:[NSDate date]]; 
[components setHour: 10]; 
[components setMinute: 5]; 
[components setSecond: 0]; 
NSDate *date = [myCalendar dateFromComponents:components]; 

NSTimer *t = [[NSTimer alloc] initWithFireDate:date 
             interval:0.0 
             target:self 
             selector:@selector(fired:) 
             userInfo:nil 
             repeats:YES]; 
[[NSRunLoop mainRunLoop] addTimer:t forMode:NSDefaultRunLoopMode]; 

ответ

0

Использование NSTimer методы класса. Создайте объект таймера и соответственно установите дату пожара. В методе метода обратного вызова таймера необходимо отправить требуемое уведомление.

Альтернативный способ: performSelector:withObject:afterDelay:. В методе выбора выберите требуемое уведомление.

+0

С помощью NSTimer можно указать время суток, когда нужно сгореть? – Jonathan

+0

Вы можете использовать initWithFireDate: interval: target: selector: userInfo: метод повторений init. Это принимает аргумент NSDate, в котором вы указываете, в какое время суток вы хотите запустить таймер. Метод setFireDate: 'может использоваться для изменения более позднего этапа таймера FireDate. – Raviprakash

+0

Хорошо, что имеет смысл, как мне сказать, в какое время суток стрелять? – Jonathan

Смежные вопросы