0

影の色を変更しようとしています。これは機能します:

self.layer.shadowColor = [[UIColor blueColor] CGColor];

ここに画像の説明を入力

しかし、私はそれをカスタムカラーにしたいので、試しました:

self.layer.shadowColor = [[UIColor colorWithRed:191/255.0f green:199/255.0f blue:203/255.0f alpha:1] CGColor];

ここに画像の説明を入力

これは機能しません。

私は何を間違っていますか?

編集:

私のinitメソッドからのコードスニペット:

self.layer.shadowOpacity = 0;
self.layer.shadowColor = [[UIColor blueColor] CGColor];
//self.layer.shadowColor = [[UIColor colorWithRed:191/255.0f green:199/255.0f blue:203/255.0f alpha:1] CGColor];
self.layer.shadowOffset = CGSizeMake(0,0);
self.layer.shadowRadius = 4;

編集2:

奇妙な部分は、UIColor を拡張してカスタム カラーの一部を含めたことです。私が使用する場合:

self.layer.shadowColor = [[UIColor pointColorBlue] CGColor];

私のUIColor + myColorから:

+(UIColor *) pointColorBlue
{
    return [UIColor colorWithRed:50/255.0f green:50/255.0f blue:255/255.0f alpha:1];
}

それは正常に動作します。

4

2 に答える 2

1

ばっ!グラフィック担当者は、背景色とほぼ同じ RGB 値を教えてくれました。

于 2012-09-11T15:27:16.487 に答える
0

それらはうまくいくはずです。

ただし、次のことを行う必要があります。

CALayer newLayer = [CALayer layer];
newLayer.shadowColor = [[UIColor blueColor] CGColor];

self.layer = newLayer;
[self.layer setWantsLayer:YES];

メインレイヤーをリセットすることが重要です。そうしないと描画されません。

于 2012-09-10T21:45:46.140 に答える