前言:因为公司的UI设计都喜欢用阴影,有时候我们还要求居中。让他们切阴影不是很方便,也查阅了大量资料。也终于发现了点端倪,再自己整理下,加上一些特别的需求:
直接来个效果:
如果心动了的话,继续看:
xml里只需要这样:
<com.lihang.ShadowLayout android:layout_width="wrap_content" android:layout_height="wrap_content" app:hl_cornerRadius="18dp" app:hl_dx="0dp" app:hl_dy="0dp" app:hl_leftShow="false" app:hl_shadowColor="#2a000000" app:hl_shadowLimit="5dp"> <TextView android:layout_width="wrap_content" android:layout_height="36dp" android:background="@drawable/shape_show_" android:gravity="center" android:paddingLeft="10dp" android:paddingRight="10dp" android:text="完全圆形圆角" android:textColor="#000" /> </com.lihang.ShadowLayout>
Api说明:
① 圆角属性
- app:hl_cornerRadius="18dp" 阴影圆角属性
② 阴影扩散程度
- app:hl_shadowLimit="5dp" 阴影的扩散区域
③ 阴影的颜色
- app:hl_shadowColor="#2a000000" 阴影的颜色可以随便改变,透明度的改变可以改变阴影的清晰程度
④ x轴的偏移量
- app:hl_dx="0dp" 也可以理解为左右偏移量
⑤ y轴的偏移量
- app:hl_dy="0dp" 也可以理解为上下的偏移量
⑥ 阴影的4边可见不可见(与偏移量无关)
- app:hl_leftShow="false" 左边的阴影不可见,其他3边保持不变
给上github地址ShadowLayout,觉得还不错的话,给个star把,谢谢