我已经用谷歌搜索了如何在 tapku 库中标记日期。根据他们的说法,我得到了下面的 JSON 代码,但它显示了整个日历或无日期的标记。
这是我的 JSON
data: [
{
id: "2",
repeat: "0",
allDay: false,
title: "All Day Event",
start: "2014-01-01 00:00:00",
end: "2014-01-01 00:00:00",
rend: ""
},
{
id: "3",
repeat: "0",
allDay: false,
title: "Long Event",
start: "2014-01-07 00:00:00",
end: "2014-01-10 00:00:00",
rend: ""
},
{
id: "4",
repeat: "0",
allDay: false,
title: "Repeating Event",
start: "2014-01-09 16:00:00",
end: "2014-01-09 16:00:00",
rend: ""
},
]
这是我的代码。
-(NSArray*) calendarMonthView:(TKCalendarMonthView*)monthView marksFromDate:( NSDate*)startDate toDate:(NSDate*)lastDate{
NSMutableArray *marks = [NSMutableArray array];
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"yyyy-MM-dd"];
for (NSDictionary *dict in APPDELEGATE.calenderDataArray) {
NSString *startdate=[[[dict objectForKey:@"start"] componentsSeparatedByString:@" "] objectAtIndex:0];
NSString *enddate=[[[dict objectForKey:@"end"] componentsSeparatedByString:@" "] objectAtIndex:0];
NSArray *CalenderDays=[NSArray arrayWithObjects:
[NSString stringWithFormat:@"%@",startdate], nil];
NSDate *d = startDate;
NSString * dateStart = [dateFormat stringFromDate:startDate];
NSLog(@"datestart==%@",dateStart);
NSLog(@"CalenderDays==%@",CalenderDays);
while(YES){
if ([CalenderDays containsObject:dateStart]) {
[marks addObject:[NSNumber numberWithBool:YES]];
} else {
[marks addObject:[NSNumber numberWithBool:NO]];
}
NSDateComponents *info = [d dateComponentsWithTimeZone:self.monthView.timeZone];
info.day++;
d = [NSDate dateWithDateComponents:info];
if([d compare:lastDate]==NSOrderedDescending) break;
}
}
NSLog(@"MarkArray %@",marks); //marks null value
return [NSArray arrayWithArray:marks];
}
我想显示从JSON
tapku 日历开始的日期。
但我没有成功。