私は奇妙な問題に遭遇しました。私は を持ってUIButton
いUIButtonTypeCustom
ます。
背景画像は透過画像を使用しています。問題は、実際の画像の透明度が正しくないように見えることです。奇妙なことは、背景がボタンの後ろに正しく表示されるため、実際には透明であることです。
以下は、ボタンの外観 (左) とボタンの外観 (右) の例です。スクリーンショットを撮り、Photoshop で背景に画像を重ねると、背景が画像内に正しく表示されますが、左側の実際のボタンでは表示されません。明らかに、背景に挿入したときの実際の画像と比較して、左側の UIButton のグローがより強烈です。
実際に透明性があることを示すために使用している画像を次に示します。
これが私のコードです:
UIButton *nextButton = [UIButton buttonWithType:UIButtonTypeCustom];
nextButton.backgroundColor = [UIColor clearColor];
nextButton.frame = CGRectMake(0, 0, 30, 30);
[nextButton setBackgroundImage:[[UIImage imageNamed:@"ButtonBackground.png"] stretchableImageWithLeftCapWidth:5 topCapHeight:5] forState:UIControlStateNormal];
forState:UIControlStateHighlighted]; [self addSubview:nextButton];
他の場所でまったく同じ画像を使用して描画しましたが、透明度に問題はありませんでした。
更新:他の透明な画像を追加すると、同様にアルファの強度が増加します。それらは透明ですが、より暗く見えるため、透明度が低くなります。繰り返しますが、他の場所では完璧に機能します。
更新 2:さらに悪いことに、まったく同じ画像を他のプロジェクトからドラッグして新しいプロジェクトを作成し、ボタンを作成しましたが、ボタンが正しく表示されても問題はありませんでした。信じられないほど迷惑です!