【发布时间】:2013-04-30 01:49:19
【问题描述】:
我正在尝试从UIColor 变量中获取RGB,alpha 值。
currentColor = [[UIColor alloc]init];
currentColor = [UIColor blackColor];
CGFloat red, green, blue, alpha;
[currentColor getRed: &red green: &green blue: &blue alpha: &alpha];
我有时会得到-1.998975 的alpha 值。
据我所知,alpha 应该介于 0 和 1 之间。
我真的很想知道它来自哪里。
有什么建议吗?
【问题讨论】:
-
当你得到一个奇怪的
alpha时,你能提供一个currentColor的例子吗?请记住,调用UIColor getRed:green:blue:alpha:方法不适用于白色、黑色和灰色(取决于这些颜色的引用方式)。 -
rgb值获取正常,只有alpha值有问题。
-
好的,但是您仍然需要提供一些示例。发布一些演示该问题的代码。
-
getRed:green:blue:alpha: 方法调用的返回值是多少?它返回YES还是NO?如果值为NO,则无法转换。
-
就像我说的,你不能对
UIColor blackColor使用这个方法。该颜色使用的是 RGB 以外的其他颜色模型。阅读UIColor getRed:green:blue:alpha:方法的文档。它明确指出它仅适用于 RGB 颜色模型中的颜色。
标签: ios objective-c alpha uicolor