2017-02-11 8 views
0

非常に簡単な質問:UIViewの不透明度を変更し、フォントをアルファ= 1.0で保持したいと思います。UIViewのアルファを変更すると、フォントの不透明度に影響します

enter image description here

enter image description here

あなたが見ることができるようにそこに2 labelesがあり、その下にUIViewのです。私はUIViewの不透明度を設定しました(例えば、@IBOutlet weak var coView: UIView!self.coView.alpha = 0.8)。その結果、UIViewとラベルの両方がより透明になり、ラベルのテキストをアルファ= 1.0に保ちたいと思います。スタックビューや制約を変更することなく実行できますか?

答えて

2

使用

coView.backgroundColor = UIColor.black.withAlphaComponent(0.8) 

それはスーパーです迷惑で、正確にはあなたが望むものではありませんが、それはその周りの道です。 coViewの背景色をアルファ値で設定することで、効果的に必要なものが得られます。

+0

恐ろしい!!!!あなたはそれを作った –

1

UIViewのアルファを変更すると、すべてのサブビューが新しいアルファセットにどのように見えるかが変更されます。これを実際に回避する方法はありませんが、他の補助的なビューを使用してこの問題を回避することができます。

たとえば、UIView pmの内部には、backgroundViewという別のサブビューがあります。このサブビューは背面にあり、背景色を設定したものです。 UIView pm内の他のすべての要素は、背景色が明確なbackgroundViewの上になります。

あなただけの色のアルファを変更したい場合は、あなただけのbackgroundViewUIView pm内の他の要素にアルファを変更するには、同じアルファに残ります

+0

これはおそらく動作しますが、いくつかのアニメーションがあるので、あまりにも多くの変更を行う必要があります。他の答えは少し良くなりますが、完璧ではありません。 – codddeer123

関連する問題