介绍
在自定义View的时候 我们可能需要对自定义View 做出一些阴影效果 在Android5.0后提供了Cardview 可以去轻松实现 其实还可以通过paint.setMaskFilter(MaskFilter maskfilter)
去实现 参数MaskFilter 有2个子类
BlurMaskFilter:模糊遮罩滤镜 改变图像的透明度值来实现的
EmbossMaskFilter:浮雕遮罩滤镜 类似于灯光照射效果
使用:
BlurMaskFilter
new BlurMaskFilter(50,BlurMaskFilter.Blur.SOLID)
第一个参数代表阴影的半径值 第二个参数代表阴影的样式
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
//绘制原图
canvas.drawBitmap(bitmap,50,50,null);
paint.setMaskFilter(new BlurMaskFilter(50,BlurMaskFilter.Blur.SOLID));
canvas.drawBitmap(bitmap,50,bitmap.getHeight()+100,paint);
}
注意:使用paint.setMaskFilter(