将已命名和已订阅的日历导入应用程序并显示所有事件

时间:2015-01-10 17:46:52

标签: ios objective-c iphone xcode icalendar

所以基本上,我正在尝试制作一个应用程序。

目标是从iCal导入特定的订阅日历,并将所有事件放入数组中。

我设法请求访问日历。 我设法导入所有日历,只使用

显示订阅的日历
NSArray *allCalendars = [self.eventStore calendarsForEntityType:EKEntityTypeEvent];
NSMutableArray *localCalendars = [[NSMutableArray alloc] init];

for (int i=0; i<allCalendars.count; i++) {
    EKCalendar *currentCalendar = [allCalendars objectAtIndex:i];
    if (currentCalendar.type == EKCalendarTypeSubscription) {
        NSLog(@"%@", currentCalendar);

现在我想将其缩小到一个名为“大日历”的特定日历。 然后,我希望该日历中的所有事件都以数组形式显示。

这是否可能并且是实现目标的一种相对有效的方式?

有关如何编码的任何建议吗?

非常感谢

1 个答案:

答案 0 :(得分:0)

您可以使用title属性并检查title == @“Big Calendar”然后导入它。

for (int i=0; i<allCalendars.count; i++) {
    EKCalendar *currentCalendar = [allCalendars objectAtIndex:i];
    if (currentCalendar.type == EKCalendarTypeSubscription && currentCalendar.title == @"Big Calendar") {
        NSLog(@"%@", currentCalendar);

我希望它会对你有所帮助。