Как создать NSPredicate для поиска событий в календаре? - PullRequest
1 голос
/ 11 июля 2011

Я пытался использовать следующий предикат для поиска событий в календаре, но получаю следующее исключение 'NSInvalidArgumentException', причина: 'предикат не был создан с помощью методов EKCalendarStore'


//[_sender objectAtIndex:0] is Name of the event and [_sender objectAtIndex:1] is location of the event

NSPredicate *prediction=[NSPredicate predicateWithFormat:@"(SELF contains[cd] %@)", [NSString stringWithFormat: @"%@%@",[_sender objectAtIndex:0],[_sender objectAtIndex:1]]];
NSArray*events=[eventStore eventsMatchingPredicate:prediction];

Ответы [ 2 ]

0 голосов
/ 24 февраля 2018

Вот реализация Swift 4.0 :

import EventKit

let eventStore = EKEventStore()
let datePredicate = eventStore.predicateForEvents(withStart: begin, 
    end: end,
    calendars: eventStore.calendars(for: .event))
let events = eventStore.events(matching: datePredicate)
0 голосов
/ 11 июля 2011

Я следовал Руководству по программированию EventKit и получил решение.

   NSPredicate *prediction=[eventStore predicateForEventsWithStartDate:statedate endDate:enddate calendars:[eventStore calendars]];
   NSArray*events=[eventStore eventsMatchingPredicate:prediction];
...