ฉันต้องการตรวจสอบว่า UIColor ที่เลือก (เลือกโดยผู้ใช้) นั้นมืดหรือสว่างฉันจึงสามารถเปลี่ยนสีของบรรทัดข้อความที่อยู่ด้านบนของสีนั้นเพื่อให้อ่านง่ายขึ้น
นี่คือตัวอย่างใน Flash / Actionscript (พร้อมการสาธิต): http://web.archive.org/web/20100102024448/http://theflashblog.com/?p=173
ความคิดใด ๆ ?
ไชโยอังเดร
อัปเดต
ขอบคุณคำแนะนำของทุกคนนี่คือรหัสการทำงาน:
- (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");
}
}
ขอบคุณอีกครั้ง :)