做Android应用开发,经常拿到美工给的设计图,针对文字样式有很多种,一般常见的无非是大小颜色的设计,当然也有一些特殊的文字样式如 20px 向上投影2px 40%黑。我第一次看到这样的颜色傻眼了,都不知道怎么办。还好身边有个UI大师,向他求助后就解决了这个问题。所以身边有个UI大师要抓住机会好好学习,我身边的这位UI大师马上就要离职了,要去创建自己的公司,祝他一切顺利!下面说说是如何实现的。
首先分析一下 20px 向上投影2px 40%黑 是什么东东
20px 大小 转换为sp时需要除以1.5 即20/1.5 = 13.3sp
向上投影2px
android:shadowDy="-2"
android:shadowRadius="2
如果是向下投影2px"
android:shadowDy="2"
android:shadowRadius="2
向左投影1px
android:shadowDx="-1"
android:shadowRadius="1"
向右投影1px
android:shadowDx="1"
android:shadowRadius="1
重点是40%黑如何计算
黑色:#000000
40% 的计算则是 255*0.4 = 102 然后将102转换为十六进制 66
这样投影40%黑就计算出来了 #66000000
android:shadowColor="#66000000"
下面附上完整的layout样式
<Button
android:id="@+id/text_btn_connect"
android:layout_width="161dp"
android:layout_height="41dp"
android:onClick="onClick"
android:text="断开链接"
android:textSize="13.3sp"
android:gravity="center"
android:background="@drawable/btn_startscan"
android:textColor="#FFFFFF"
android:shadowColor="#66000000"
android:shadowDy="-2"
android:shadowRadius="2"
/>