Android 实现阴影效果总结

Android 244 2018-10-24 16:54

图片添加阴影是为了突出图片的效果,有的设计师为了突出某部分的内容会给该部分添加阴影背景,常见的是给图片添加外阴影,之前也遇到要给图片添加内阴影的效果,但是时间紧最后没实现出来,有实现方法的朋友告知一二,多谢~

图片添加阴影的几种方式

  • layer-list 实现
  • 使用.9图实现
  • 自定义 Drawable 实现
  • 使用 elevation属性
  • 使用第三方库

利用 layer-list 实现 (不推荐使用,效果不太好)

layer-list 中添加两个item实现,通过控制背景图层和显示图层的露出边缘实现。

可参考 Android图片添加阴影效果的两种方式

.9切图实现

  • 让设计师切.9图 ,这时候就是拼人品了~
  • 自己切.9图,工具地址是 shadow4android

实现参考 Answers - Custom ImageView with drop shadow

自定义Drawable 绘制实现

参考 Android开发中阴影效果的实现

参考 聊聊 Material Design 里,阴影的那些事儿!

使用 API 21 以上提供的 elevation 属性

主要是通过设置 elevation 属性和 translationZ 属性

  • elevation:高度,静态组件,用于提升 UI 元素高度的属性;
  • translationZ:Z 值转换,动态组件,常用于操作 UI 元素时交互动画的属性

可以参考这篇博文 亦枫-Android 视图高度和阴影的那点事儿

使用的第三方库实现

  • Github 搜索 Android Shadow 排行
  • 这个库效果实现的很细腻 ,源码也不难。ShadowImageView
文章评论