2009-10-17 5 views

答えて

28

あなたの背景として機能する親は、子供を包むコンテナの前に兄弟に変更する必要があります。そうすれば、階層全体に影響を与えずに透過性を設定できます。

これは次のようになります。

  • <item-container>
    • <item-background>
    • <children-container>
      • <children/>

この階層は、表示順序が同じで、子コンテナの内容とは独立して不透明度を設定できます。

+0

おかげだろう、それをテストします。 – Mustafa

+0

それは私のために働いた:)。ありがとう。 – Mustafa

2

あなたがしようとしていることは100%確信していませんが、透明な背景を持つコンテナビューを使用するには、backgroundColorプロパティを[UIColor clearColor]に設定します。そうすれば背景を見ることができますが、すべてのサブビューは不透明なままです。背景を半透明にしたい場合は、[UIColor colorWithRed:green:blue:alpha:]を使用してください。

他のビューが表示されていないときに、ビュー全体が半透明になるようにしたい場合は、それらを兄弟にする必要があります。

3

私はこれが遅い答えで、何かが既に受け入れられていることを知っていますが、UIViewの透明度を直接設定するのではなく、代わりに0,0,0 、0、色を完全に透明にします。

+2

親のビューで次のコードを使用して、これを行います。[myUIView setBackgroundColor:[UIColor clearColor]]; – DEzra

64

シンプルなビューを作成しなくても簡単な方法の1つが可能です。親ビューに直接アルファを設定しないでください。代わりに使用する

[parentView setBackgroundColor:[[UIColor clearColor] colorWithAlphaComponent:0.5]]; 

これで、すべての子ビューは独自の色を持つことができ、透明になりません。スウィフトは

が、これは

parentView.backgroundColor = UIColor.clearColor().colorWithAlphaComponent(0.7) 
+0

治療を受けました。まさに私が必要としたもの。ありがとうございました!! –

関連する問題