I.はじめに
影をカスタマイズするときは、より滑らかな効果を実現するために透明度を追加する必要があるため、関連する知識を理解する必要があります。もちろん、効果を実現するのは影に限らず、他の UI デザインにも透明度が含まれます。
2 つの色の値が表す
ARGB これは対応する色値記号です。A はアルファ透明度を表し、R=赤、G=緑、B=青です。
<!--100% —FF-->
<!--95% — F2-->
<!--90% — E6-->
<!--85% — D9-->
<!--80% — CC-->
<!--75% — BF-->
<!--70% — B3-->
<!--65% — A6-->
<!--60% — 99-->
<!--55% — 8C-->
<!--50% — 80-->
<!--45% — 73-->
<!--40% — 66-->
<!--35% — 59-->
<!--30% — 4D-->
<!--25% — 40-->
<!--20% — 33-->
<!--15% — 26-->
<!--10% — 1A-->
<!--5% — 0D-->
<!--0% — 00-->
100% - FF は完全に不透明を意味します。
カスタム参照を作成する場合は、A に対応する値を追加するのが最善です。ARGB は 8 ビット シンボルで表されます (例: #FFFFFFFF)
各ビット シンボルは 16 進文字であり、0 ~ F の値です。
ケース - カスタムシャドウ効果
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true">
<layer-list>
<item>
<shape android:shape="rectangle">
<padding android:bottom="1px" android:left="1px" android:right="1px" android:top="1px" />
<stroke android:width="1px" android:color="#0D90A1F5"/>
<corners android:radius="@dimen/dp_32" />
</shape>
</item>
<item>
<shape android:shape="rectangle">
<padding android:bottom="1px" android:left="1px" android:right="1px" android:top="1px" />
<stroke android:width="1px" android:color="#1A90A1F5"/>
<corners android:radius="@dimen/dp_32" />
</shape>
</item>
</layer-list>
</item>
<item android:state_focused="false">
<layer-list>
<item>
<shape android:shape="rectangle">
<padding android:bottom="1px" android:left="1px" android:right="1px" android:top="1px" />
<stroke android:width="1px" android:color="@color/transparent"/>
<corners android:radius="@dimen/dp_32" />
</shape>
</item>
<item>
<shape android:shape="rectangle">
<padding android:bottom="1px" android:left="1px" android:right="1px" android:top="1px" />
<stroke android:width="1px" android:color="@color/transparent"/>
<corners android:radius="@dimen/dp_32" />
</shape>
</item>
</layer-list>
</item>
</selector>
単純なシャドウ効果を <layer-list><item.../></layer-list> で囲むだけで済みます。セレクターを追加すると、選択効果が生じます。もちろん、アイテムの数が多くなり、ストロークやパディングが小さくなると、シャドウ効果のレイヤーが細かくなり、レイヤーが見づらくなります。
質問を投げます:
アイテムのストロークの幅 = 1px、パディング top&bottom = 1px では、アイテム全体の高さはどれくらいですか?
2ピクセル?それとも4ピクセル?