2017-11-21 1 views
1

私はマテリアルデザイン要素を使ってアプリケーションを作成しています。私は2つの長方形(白と青)の影を追加しようとしました。要素シャドーが目に見えない

<ImageButton 
    android:layout_width="100dp" 
    android:layout_height="100dp" 
    android:background="@android:color/white" 
    android:elevation="10dp" 
    android:translationZ="4dp"/> 

<ImageButton 
    android:layout_width="100dp" 
    android:layout_height="100dp" 
    android:background="@android:color/holo_blue_light" 
    android:elevation="10dp" 
    android:translationZ="4dp"/> 

白い矩形の場合、影はうまくなりますが、青の場合は影が実際には見えません(特に右側の影)。

enter image description here

どのように私は影の視認性を向上させることができますか?

答えて

1

これは、青色が当然濃いので、白よりも暗いので、影のコントラストが小さくなり「消える」ためです。それは光錯覚のようなものです。下の画像を見て、私は色の付いた四角形を切り捨て、あなたが見ることができるように、影は同じものです。シャドウを少し暗くする(不透明度を少し下げる)ことで、「見える」ようにすることができます。

enter image description here

私は上記のあなたの色で少し例を作った、左側の白と青のボックスに同じボックスシャドウがあります。明らかに、青色のボックスの影は、ボックスの明るさのために少ししか見えません。右側の青いボックスの影は、わずかに増加した不透明度(+ 10%)を持っているため、影が少し目立つようになります。

enter image description here

+1

マティアスのおかげで、どのように私は暗いプログラムまたはXMLを使用してビットをシャドウ行うことができますか? – Delphian

+0

私はめったにAndroid用のものをやっていないので、一番うまくいけば、私はここでAndroidのための "ベストプラクティス"を持っていません。私はちょうどこの質問を見つけ、共有するいくつかの "理論的な"知識を持っていた。おそらく、影の不透明度を色の明るさに結びつける可能性はありますか? –

+0

標準ライブラリを使って影の不透明度を制御する方法はわかりませんが、私がすべてを自分で行う場合にのみ、これは非常に大きな作業です。 – Delphian

関連する問題