从日历tjeervurig中选择两个日期

时间:2013-03-14 16:03:24

标签: ios objective-c

我使用此日历https://github.com/TjeerdVurig/Vurig-Calendar

如何在选择这两个日期之后选择两个日期并执行操作,并使这两个日期之间的所有日期选中突出显示为蓝色

作为示例,我选择1 - 1/3/2013                     2 - 5/3/2013

点击两个日期之后它突出显示{1,2,3,4,5} / 3/2013之间的所有日期,蓝色,然后执行一个动作

1 个答案:

答案 0 :(得分:0)

    id markedDateObj1 = [self.markedDates objectAtIndex:1];
    NSDate *date1 = (NSDate *)markedDateObj1;
    id markedDateObj0 = [self.markedDates objectAtIndex:0];
    NSDate *date0 = (NSDate *)markedDateObj0;
    if ([date0 day]-1 && i==[date0 day]-1) {
        CGRect rectangleGrid = CGRectMake(targetX,targetY,kVRGCalendarViewDayWidth+2,kVRGCalendarViewDayHeight+2);
        CGContextAddRect(context, rectangleGrid);
        CGContextSetFillColorWithColor(context, [UIColor colorWithHexString:@"0x006dbc"].CGColor);
        CGContextFillPath(context);

        CGContextSetFillColorWithColor(context,
                                       [UIColor whiteColor].CGColor);
    }
    if ([date1 day]-1 && i==[date1 day]-1) {
        CGRect rectangleGrid = CGRectMake(targetX,targetY,kVRGCalendarViewDayWidth+2,kVRGCalendarViewDayHeight+2);
        CGContextAddRect(context, rectangleGrid);
        CGContextSetFillColorWithColor(context, [UIColor colorWithHexString:@"0x006dbc"].CGColor);
        CGContextFillPath(context);

        CGContextSetFillColorWithColor(context,
                                       [UIColor whiteColor].CGColor);
    }
    for (int ai=[date0 day]; ai<[date1 day]-1; ai++) {

        if (ai && i==ai) {
            CGRect rectangleGrid = CGRectMake(targetX,targetY,kVRGCalendarViewDayWidth+2,kVRGCalendarViewDayHeight+2);
            CGContextAddRect(context, rectangleGrid);
            CGContextSetFillColorWithColor(context, [UIColor colorWithHexString:@"0x0095FF"].CGColor);
            CGContextFillPath(context);

            CGContextSetFillColorWithColor(context,
                                           [UIColor whiteColor].CGColor);
        }
    }