Android View 的阴影效果

Android View 的阴影效果

Android 5.0之前View通常只有X、Y属性,而在5.0之后有了Z属性,即2个View之间在Z轴上的距离。

Z属性由XML中elevation和代码中translationZ构成

Z = elevation + translationZ

1. 阴影效果实现

XML中使用elevation属性

    

代码中设置TranslationZ属性

    View tv = findViewById(R.id.tv);
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
        tv.setTranslationZ(10);
    }
2.一些设置了却无法显示阴影的原因:
  • 控件必须设置背景色,且不能为透明
  • 控件与父控件的边界之间需有足够空间绘制出阴影才行
3.目前发现这2个无法显示阴影的原因,欢迎补充
4.如果有其他实现阴影效果的方法,欢迎交流

你可能感兴趣的:(Android View 的阴影效果)