我为我的应用程序使用的EKCalendars创建了一个NSMutableArray。在第一次启动时,我从EventStore导入所有日历,但我排除了生日日历和默认日历,只留下用户创建的日历。但问题是如果只有生日日历和默认日历。这是我到目前为止所得到的......
for (int i = 0; i < theEventStore.calendars.count; i++)
{
EKCalendar *c = [theEventStore.calendars objectAtIndex:i];
if (c.type != EKCalendarTypeBirthday && c.type != EKCalendarTypeSubscription)
{
if (c.type == EKCalendarTypeLocal && [c.title isEqualToString:@"Calendar"])
{
NSLog(@"Removed Calendar: %@", c);
}
else
{
[self.calendarLst addObject:c];
NSLog(@"Added Calendar: %@", c);
}
}
}
我有点难过。任何帮助将不胜感激。
答案 0 :(得分:0)
我在原来的for循环之后添加了这个。这可以确保数组中存在某些内容。
int count = self.calendarLst.count;
NSLog(@"Count: %i",count);
if (count == 0)
{
for (int i = 0; i < theEventStore.calendars.count; i++)
{
EKCalendar *c = [theEventStore.calendars objectAtIndex:i];
if (c.type == EKCalendarTypeLocal && [c.title isEqualToString:@"Calendar"])
{
[self.calendarLst addObject:c];
NSLog(@"Added Calendar: %@", c);
}
}
}
}
问题不在于循环,而是空数组。