我已经取代了drawInRect:withFont的弃用用法,但副作用是我无法再看到我应用中颜色条中的某些颜色。绿色被替换为黑色(除了条形图中的第一个框,因为yearText还没有被绘制),黄色和红色被白色替换。
这是我用来为条形框添加颜色的代码:
CGFloat *yearColor = (CGFloat[]){0.5, 0.5, 0.5, 1.0};
CGContextSetFillColor(ctx, yearColor);
CGRect yearRect = CGRectMake(xOffset+1,
yOffset+kScoreBoxHeight-2,
kScoreBoxWidth+50,
kScoreBoxHeight);
以下代码我用
替换弃用的drawInRect[theYear drawInRect:yearRect
withAttributes:@{
NSFontAttributeName:
[UIFont fontWithName:@"PFTempestaFiveCompressed" size:8.0],
NSForegroundColorAttributeName: [UIColor darkGrayColor ]
}];
这是使用withFont的原始drawInRect方法。我没有指定任何字体颜色,依赖于默认的黑色。
[theYear drawInRect:yearRect withFont:[UIFont
fontWithName:@"PFTempestaFiveCompressed" size:8.0]];
问题似乎发生在深色(黑色,灰色)。这是一个适用于棕色的例子。
[theYear drawInRect:yearRect
withAttributes:@{NSFontAttributeName: yearFont,
NSForegroundColorAttributeName: [UIColor brownColor]}];