vendredi 14 novembre 2014

Methods returning nill values


Vote count:

0




The below method is return the nil values, I have observed that when the method is runnning in the block the method is returning the values with out excuting.


It is first returning the _cards and then the nlogs are printing.


Please help how to resolve this . Thaks in Advance



- (NSMutableArray *)cards
{
if (_cards) return _cards;
EKEventStore *eventStore = [[EKEventStore alloc] init];
if([eventStore respondsToSelector:@selector(requestAccessToEntityType:completion:)]) {
_cards = [[NSMutableArray alloc] init];
[eventStore requestAccessToEntityType:EKEntityTypeEvent completion:^(BOOL granted, NSError *error) {
/* This code will run when uses has made his/her choice */

NSString * myString = @"2014-01-01";
NSDateFormatter* dateFormatter = [[NSDateFormatter alloc] init];
dateFormatter.dateFormat = @"yyyy-MM-dd";
NSDate *startDate = [dateFormatter dateFromString:myString];

NSDate *endDate = [[NSDate alloc] init];

// NSArray *calendars = [eventStore calendars];
NSArray *calendars = [eventStore calendarsForEntityType:EKCalendarChooserDisplayAllCalendars];
NSLog(@"Calendars %@",calendars);
NSPredicate *predicate = [eventStore predicateForEventsWithStartDate:startDate
endDate:endDate calendars:calendars];
matchingEvents = [eventStore eventsMatchingPredicate:predicate];
NSIndexPath * indexpath;
NSString * event = [[matchingEvents objectAtIndex:indexpath.row] valueForKey:@"title"];
EKEvent *anEvent;
NSLog(@"Total Events >> %lu",(unsigned long)[matchingEvents count]);

for (int j=0; j < [ matchingEvents count]; j++) {
[_cards addObject:@(ANDYCardStateNormal)];

anEvent = [matchingEvents objectAtIndex:j];
NSLog(@"Title >>>%@",anEvent.title);
NSLog(@"start date is %@ \n End Date is >>> %@",anEvent.startDate,anEvent.endDate);

}
}];
}

return _cards;
}


asked 1 min ago







Methods returning nill values

Aucun commentaire:

Enregistrer un commentaire