iphone-common-codes-ccteam源代码 CCUIColor.m

//  
// CCUIColor.m
// CCFC
//
// Created by xichen on 11-12-17.
// Copyright 2011年 ccteam. All rights reserved.
//


#import "CCUIColor.h"




@implementation UIColor(cc)


// 获取UIColor的RGBA的值
- (void)getRGBAValue:(CGFloat *)red
green:(CGFloat *)green
blue:(CGFloat *)blue
alpha:(CGFloat *)alpha
{
CGColorRef colorRef = [self CGColor];

const CGFloat *tmComponents = CGColorGetComponents(colorRef);
if(red)
*red = tmComponents[0];


if(green)
*green = tmComponents[1];

if(blue)
*blue = tmComponents[2];


if(alpha)
*alpha = tmComponents[3];
}


- (CGFloat)getRedValue
{
CGColorRef colorRef = [self CGColor];

const CGFloat *tmComponents = CGColorGetComponents(colorRef);
return tmComponents[0];
}


- (CGFloat)getGreenValue
{
CGColorRef colorRef = [self CGColor];

const CGFloat *tmComponents = CGColorGetComponents(colorRef);
return tmComponents[1];
}


- (CGFloat)getBlueValue
{
CGColorRef colorRef = [self CGColor];

const CGFloat *tmComponents = CGColorGetComponents(colorRef);
return tmComponents[2];
}


- (CGFloat)getAlphaValue
{
CGColorRef colorRef = [self CGColor];

const CGFloat *tmComponents = CGColorGetComponents(colorRef);
return tmComponents[3];
}


// 由RGB的值获得CGColorRef指针
// you should release the returnValue by your hand.
+ (CGColorRef)createCGColorRefByRGB:(CGFloat)red
green:(CGFloat)green
blue:(CGFloat)blue
alpha:(CGFloat)alpha
{
CGColorSpaceRef rgb = CGColorSpaceCreateDeviceRGB();
const CGFloat rgbColor[] = {(float)red / 255, (float)green / 255 , (float) blue / 255, (float) alpha / 255};
CGColorRef color = CGColorCreate(rgb, rgbColor);
CGColorSpaceRelease(rgb);

return color;
}


// print the RGBA info of the UIColor
- (void)printRGBA
{
CGColorRef colorRef = [self CGColor];
const CGFloat *tmComponents = CGColorGetComponents(colorRef);
NSLog(@"%@ R:%f, G:%f, B:%f, A:%f",
self, tmComponents[0], tmComponents[1], tmComponents[2], tmComponents[3]);
}


@end

 

可能有更新:

googlecode链接地址:http://code.google.com/p/iphone-common-codes-ccteam/source/browse/trunk/CCFC/files/CCUIColor.m
github地址: https://github.com/cxsjabc/iphone-common-codes-ccteam/tree/master/CCFC/files/CCUIColor.m

 

posted @ 2012-01-06 09:56  cc_team  阅读(245)  评论(0编辑  收藏  举报