2009-08-13 11 views
6

私は幾分透過的なビュー(アルファ= 0.6)にいくつかのサブビューを持っています。私はブレンディングによってテキストを読みにくくするが、それを親ビューのサブビューとして追加することで親のアルファ値を採用しているため、サブビュー(UILabel)の1つをアルファ1.0で描画したい。この動作を無効にする方法はありますか?私はそれをサブビューから削除しなければならないと信じていますが、おそらく私が何かを逃しているかどうか尋ねてみたいと思っていました。サブビューの1つで親UIViewのアルファ値を上書きできますか?

答えて

2

あなたは正しいですか?透明でないビューとしてレンダリングするには、透明ビューからUILabelを移動しなければなりません。

10

簡単に機能するもう1つのアプローチは、UIViewでアルファチャンネルを変更しないことです。代わりに、UIViewのbackgroundColorオブジェクトのアルファレイヤーを変更します。

もちろん、これはなぜアルファレイヤーを透明にしたかによって決まりますが、私の要件にはうまくいきました。

+0

ありがとうございました!あなたのソリューションは、別のコンテナを作成する必要がありません。 –

13

ブライアンです。たとえば :

view.backgroundColor = [UIColor colorWithWhite:0 alpha:0.6]; 

はアルファ0.6と他のビューで黒の背景には影響しませんようになります。

+0

thanx、その働き。 – ViruMax

関連する問題