Palette是一个类似调色板的工具类,根据传入的bitmap,提取出主体颜色,使得图片和颜色更加搭配,界面更协调。
它是一个建造者模式的实例化模式,用法很简单,总的说来分三步:
1、通过builder添加参数:
Palette p = Palette.from(BitMap)//将图片传入调色板中
.addFilter(Filter)//添加一个过滤器,根据HSL过滤(可以不设置,有默认值)
.maximumColorCount(20)//设置一个颜色种数的临界值,有效的颜色块数量小于这个值,直接用这些颜色作为最终统计到的样本。有效的颜色块后面解释(可以不设置,有默认值)
.resizeBitmapSize(480)//bitmap放入调色板时,会先压缩,提高计算速率,这里就是设置压缩后的尺寸。(可以不设置,有默认值)
.clearFilters()//清除颜色过滤器(可以不调用)
.generate();//第二步,创建Palette实例。
2、构建Palette实例。产生实例的方法generate有无参和有参数的两个重载方法。
无参的直接返回Palette,是同步方法。
有参的返回的是一个异步任务,通过传入的参数回调。因