我需要确定选定的UIColor(由用户 Select )是暗的还是亮的,这样我就可以更改位于该 colored颜色 之上的一行文本的 colored颜色 ,以获得更好的可读性.
下面是Flash/ActionScript的示例(带演示): http://web.archive.org/web/20100102024448/http://theflashblog.com/?p=173个
有什么 idea 吗?
干杯, 安德烈
UPDATE个
感谢大家的建议,以下是工作代码:
- (void) updateColor:(UIColor *) newColor
{
const CGFloat *componentColors = CGColorGetComponents(newColor.CGColor);
CGFloat colorBrightness = ((componentColors[0] * 299) + (componentColors[1] * 587) + (componentColors[2] * 114)) / 1000;
if (colorBrightness < 0.5)
{
NSLog(@"my color is dark");
}
else
{
NSLog(@"my color is light");
}
}
再次感谢:)