安卓界面开发中,常会遇到要阴影的情况。大部分我们用android:elevation或多层的Drawable来实现。但对于像素眼的UI来说,偏偏让我们更改阴影的颜色还要模糊度。一般我直接用“系统没有相关属性”怼回去,因为网上实在没找到现成好用的。但最近被逼无奈实现一个,跟大家分享下。
闲话少说,实现效果走一波:
这个布局叫ShadowRelativeLayout,从名字你就知道他继承谁了。所有不用嵌套布局,可以直接在里面写子View。
使用起来呢很简单,注意下面的padding一定要写,是留绘制阴影的空间。如下:
<com.wan.shadowrelativelayout.ShadowRelativeLayout
android:layout_width="200dp"
android:layout_height="100dp"
android:background="@drawable/bg_round"
android:padding="16dp"
bind:shadow_blur="16dp"
bind:shadow_color="@color/colorAccent"
bind:shadow_radius="5dp"
/>