日历数组

时间:2011-12-16 14:22:42

标签: iphone objective-c ios

我为我的应用程序使用的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);
            }
        }
    }

我有点难过。任何帮助将不胜感激。

1 个答案:

答案 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);
             }
         }
     }
 }

问题不在于循环,而是空数组。