原因
結論から言うと、初期化の際に指定する引数の値が原因でした。UIButtonクラスでbuttonWithType:メソッドを使い初期化する場合なのですが、はじめはUIButtonTypeRoundedRectを指定していました。ですがこれだと上手く画像を透過させることができません。
画像を透過させる場合はUIButtonTypeCustomを指定してあげます。
解決方法
// 透過されない
// UIButtonTypeRoundedRectを指定
UIButton *btn = [UIButton buttonWithType:UIButtonTypeRoundedRect];
// 透過される
// UIButtonTypeCustomを指定
UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom];
おわり
これの面白いところが、iOS6(シミュレータ)ではどちらを指定しても画像を正常に透過できたことです。ですがiOS5.1ではUIButtonTypeRoundedRectを指定した場合は今回のように画像の透過はされませんでした。
iOS6からは画像が挿入されたら自動的にUIButtonTypeRoundedRectではなくUIButtonTypeCustomが指定されるようになったかなあ。
0 件のコメント:
コメントを投稿