背景
因为需要给控件四周添加一层均匀的阴影,而使用CardView给控件所添加的阴影其实不是均匀分布在四周的,而是点光源和自然光组合照射的结果,这种情况下控件底边阴影颜色最深。看图会更清晰:
所以重新找其他替代的控件,在Github找到一个给View添加阴影控件shadow-layout能够给控件四周添加均匀阴影。不过在使用的过程中发现了一些问题。
遇到的问题
ShadowLayout有一个color属性app:sl_shadowColor="#ff0000"
,但是当我修改阴影颜色时,无论修改什么颜色,阴影颜色始终是黑色。
问题原因
这就让我很困惑了,明明修改了颜色,为什么没有起作用?在自定义的ShadowLayout控件文件里,在获取颜色值的位置添加断点,发现实际上是能获取到颜色值的。这让我更加困惑。
mShadowColor = attr.getColor(R.styleable.ShadowLayout_sl_shadowColor, getResources().getColor(R.color.default_shadow_color