2
我正在使用tapku库在我的应用程序中显示日历。我已经完成了所有的日期计算,并根据我的需要正确标记了单元格,但是我想根据自己的选择给单元格赋予不同的颜色。我已经完成了单一背景颜色的标记,但我想用三种颜色显示。我怎么能够?在单一背景颜色的tapku图库中完成标记日期想要三种颜色目标C
我正在使用tapku库在我的应用程序中显示日历。我已经完成了所有的日期计算,并根据我的需要正确标记了单元格,但是我想根据自己的选择给单元格赋予不同的颜色。我已经完成了单一背景颜色的标记,但我想用三种颜色显示。我怎么能够?在单一背景颜色的tapku图库中完成标记日期想要三种颜色目标C
看该方法:
颜色被设定为[的UIColor grayColor]在drawRect:方法(下面一个在代码)。你可以做的是检查日期是否是你感兴趣的日期,然后适当地改变颜色。我不确定你想如何区分你的日期 - 这是你的电话;在过去,我已经将标记参数的参数更改为int类型,然后将颜色基于int的值。 mark参数来自marks数组,所以如果您传入具有不同值的数组,然后在整个TKCalendarMonthView中更改方法参数,则应该没问题。例如,可以说你想要:mark = 1 - >绘制红色; mark = 2 - >绘制绿色;标记> 2 - >绘制蓝色。
- (void) drawTileInRect:(CGRect)r day:(int)day mark:(**int**)mark font:(UIFont*)f1 font2:(UIFont*)f2
{
NSString *str = [NSString stringWithFormat:@"%d",day];
r.size.height -= 2;
[str drawInRect: r
withFont: f1
lineBreakMode: UILineBreakModeWordWrap
alignment: UITextAlignmentCenter];
if (mark) {
if (mark == 1)
[[UIColor redColor] set];
else if (mark == 2)
[[UIColor greenColor] set];
else if (mark > 2)
[[UIColor blueColor] set];
r.size.height = 10;
r.origin.y += 18;
[@"•" drawInRect: r
withFont: f2
lineBreakMode: UILineBreakModeWordWrap
alignment: UITextAlignmentCenter];
}
[[UIColor grayColor] set];
}
希望这回答你的问题。
你能告诉我如何使用和计算和不同的单元格颜色集在图书馆 – parag