Отложить метод в EventKit Framework? - PullRequest
4 голосов
/ 14 марта 2011

Я могу получить доступ ко всем функциям EKEventStore, таким как сохранение любого события или удаление любого события из календаря.

Но как можно создать откладывание для этого события, скажем, 15-минутное откладывание, необходимое для всего saveEvent?

я не нашел такой метод

Кто-нибудь знает такой метод?

Ответы [ 2 ]

0 голосов
/ 18 мая 2011

Если вы пытаетесь настроить некоторую функцию в вашем приложении, чтобы она выполнялась после 15-секундной задержки, вы можете использовать что-то вроде этого:

[self performSelector:@selector(yourMethod) withObject:nil afterDelay:15];

EventKit предназначен для установки локальных уведомлений для пользователя, которые могут быть показаны независимо от того, запускает ли пользователь ваше приложение или нет. Они в точности похожи на push-уведомления, за исключением того, что они хранятся локально на устройстве пользователя и не требуют подключения к сети.

Если вы пытаетесь добавить функцию повтора в уведомление EventKit, вы можете реализовать ее в своем приложении, используя метод ApplicationDidLoadWithOptions. Этот метод вызывается всякий раз, когда пользователь нажимает кнопку «ОК» в локальном уведомлении. Насколько я знаю, в самой среде EventKit нет встроенной функции повтора.

0 голосов
/ 26 апреля 2011

Я никогда не пробовал эту библиотеку, но вы пробовали NSTimer?Что-то вроде:

NSTimer *snoozeTimer;   
//make it reachable in whole class

//setting the snooze timer. 900 s = 15 min. change to "repeats:NO" if you want just one snooze.   

snoozeTimer = [NSTimer scheduledTimerWithTimeInterval:900.0 target:self selector:@selector(someAlarmMethod) userInfo:nil repeats:YES];

//and after finished snooze  
[snoozeTimer invalidate];

Возможно, это не то, что вы ищете, но это может сработать:)

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