UIColor
のrgbコンポーネントを抽出して、のピクセルを手作業で構築しようとしています。次のサンプルコードは、ほとんどのUIColor
定数で問題なく動作しますが、すべてではありません。ウィットに:いくつかのUIColorsの色成分を取得する異常な結果
CGColorRef color = [[UIColor yellowColor] CGColor];
const float* rgba = CGColorGetComponents(color);
float r = rgba[0];
float g = rgba[1];
float b = rgba[2];
float a = rgba[3];
NSLog(@"r=%f g=%f b=%f a=%f", r, g, b, a);
上記[UIColor yellowColor]
の結果は、予想通り
R = 1.000000 G = 1.000000、B = 0.000000 = 1.000000、 あります。
[UIColor redColor]
は、予想通り再び r = 1.000000g = 0.000000b = 0.000000a = 1.000000, となる。 blueColor
とgreenColor
についても同様です。 (実際に私がいる場合)
しかし、[UIColor blackColor]
と[UIColor whiteColor]
の結果は完全に異常に見える、と私は私が間違ってやっているのか分かりません。ウィットに
、[UIColor blackColor]
を与える R = G = 0.000000 1.000000、B = 0.000000 = 0.000000、緑色tranparentにある 、
と[UIColor whiteColor]
が R = 1.000000 G = 1.000000、B = 0.000000 = 0.000000与えます、 は透明黄色である。
誰かのどちらかできれば、私はそれを感謝したい:
は、(1)私が間違っ
をやっているかを説明(3)(2)私の異常な結果を複製し、それは私ではない私に教えて、または
大きなハンマーで頭の中に私をぶつけたので、そんなに痛いことはありません。
ハワード
ブリリアント!ありがとうございました。私は以前、 'CGColorGetComponents(color)'を呼び出す前に、 'CGColorGetNumberOfComponents(color)'を頻繁に参照することで混乱しました。今私はなぜそれを見るのですか?ちなみに、上記のモデルの* name *を印刷する方法はありませんか?その値だけではありませんか? – hkatz
デバッガはあなたの名前を表示します。数字のconst定義なので、私はあなたがそれを印刷できるかどうかはわかりません。 – pgb