我正在尝试从UIColor对象中获取RGB值。
如果我对UIColor对象执行以下操作,它就会工作
UIColor *top = [UIColor lightGrayColor];
const CGFloat* colorsTop = 0;
colorsTop = CGColorGetComponents(top.CGColor);如: UICachedDeviceRGBColor * 0x7a7d5b50
但是,如果我执行以下操作,它将失败。谁能解释一下原因吗?
UIColor *top = [UIColor colorWithRed:1 green:1 blue:1 alpha:1];
const CGFloat* colorsTop = 0;
colorsTop = CGColorGetComponents(top.CGColor);如: UIColor * 0x7a7d5cb0
最后一个错误: EXC_BAD_ACCESS (code=1,0xb7a7d5b9)
发布于 2016-06-23 11:06:44
要获得UIColor的RGB组件,您应该使用以下方法.
- (BOOL)getRed:(CGFloat *)red green:(CGFloat *)green blue:(CGFloat *)blue alpha:(CGFloat *)alpha像这样..。
CGFloat red = 0;
CGFloat green = 0;
CGFloat blue = 0;
CGFloat alpha = 0;
[someUIColor getRed:&red green:&green blue:&blue alpha:&alpha];red、green、blue和alpha现在将包含该颜色的值。
https://stackoverflow.com/questions/37989701
复制相似问题