所有 Android 版本的阴影外观

Shadow Appearance on All Android Versions

Lollipop中我们通过setElevation()方法设置了viewShadow

但在pre-Lollipop中,它不起作用。

使 Viewpre-lollipop 设备和 lollipop 设备上显示时具有相同外观的最佳方法是什么?

有很多方法,每种方法都有其优点和缺点:

  1. 使用生成的渐变绘制阴影。设计支持库就是这样做的。这种方法支持动态阴影并且非常快。不适合绘图代码 - 通常您必须将其添加为背景并修改填充。
  2. 使用 9 个色块绘制阴影。质量更好,可能比渐变更快。不支持动态阴影,还需要修改填充和背景。
  3. 使用 RenderScript 绘制阴影。最好的质量、动态阴影和易于集成。这是最慢的方法,您需要设置 RenderScript。 Carbon 使用 RenderScript 绘制阴影。