как получить все события, которые хранятся в EKEventStore без предиката - PullRequest
2 голосов
/ 22 августа 2011

как получить все события, которые хранятся в EKEventStore без предиката

Я получаю пути только на основе предиката, имеющего только начальную и конечную даты. не могли бы вы помочь?

спасибо заранее.

Ответы [ 2 ]

1 голос
/ 17 декабря 2013

DistantPast и DistantFuture не работают, по-видимому, Apple не нравится, что временной интервал слишком велик. Однако, поскольку в любом случае вы можете получать события максимум 2 месяца назад, я обнаружил, что это работает:

NSDate *startDate = [[NSDate date] dateByAddingTimeInterval:-604800*10];   //This is 10 weeks in seconds   
NSPredicate *pred = [self.eventStore predicateForEventsWithStartDate:startDate endDate:[NSDate distantFuture] calendars:nil];
0 голосов
/ 10 мая 2012

Редактировать (30.01.17): Этот ответ устарел;см. ответ Боба выше.

-

Извините, этот ответ может быть немного запоздалым, но для тех, кто ищет здесь:

Вы все ещенужно использовать предикат, но вы можете просто указать начальную дату как [NSDate distantPast], а конечную дату как [NSDate distantFuture]

Например, при этом будут получены все события календаря для включенных вcalendarArray "при условии, что у вас есть EKEventStore с именем" eventStore ":

NSPredicate *fetchCalendarEvents = [self.eventStore predicateForEventsWithStartDate:[NSDate distantPast] endDate:[NSDate distantFuture] calendars:calendarArray];

NSArray *allEvents = [self.eventStore eventsMatchingPredicate:fetchCalendarEvents];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...