通过setColorFilter可以实现滤镜效果。
如:
final WallpaperManager wallpaperManager =WallpaperManager.getInstance(this);
//获取壁纸
final Drawable wallpaperDrawable =wallpaperManager.getDrawable();
//指定滤镜颜色以及混合模式
wallpaperDrawable.setColorFilter(Color.RED,PorterDuff.Mode.MULTIPLY);
注意:PorterDuff.Mode枚举值:
1.PorterDuff.Mode.CLEAR
所绘制不会提交到画布上。
如:
注意:PorterDuff.Mode枚举值:
1.PorterDuff.Mode.CLEAR
2.PorterDuff.Mode.SRC
3.PorterDuff.Mode.DST
4.PorterDuff.Mode.SRC_OVER
5.PorterDuff.Mode.DST_OVER
6.PorterDuff.Mode.SRC_IN
7.PorterDuff.Mode.DST_IN
8.PorterDuff.Mode.SRC_OUT
9.PorterDuff.Mode.DST_OUT
10.PorterDuff.Mode.SRC_ATOP
11.PorterDuff.Mode.DST_ATOP
12.PorterDuff.Mode.XOR
13.PorterDuff.Mode.DARKEN
//调亮
14.PorterDuff.Mode.LIGHTEN
//用于颜色滤镜
15.PorterDuff.Mode.MULTIPLY
16.PorterDuff.Mode.SCREEN
本文详细介绍了如何使用setColorFilter方法实现滤镜效果,并深入解析了PorterDuff模式的不同作用,包括如何使用不同模式来控制滤镜效果的叠加方式。
4874

被折叠的 条评论
为什么被折叠?



