Android 5.0+ 解析(三)Palette类

来源:互联网 发布:yum gcc c 4.9 编辑:程序博客网 时间:2024/06/04 00:46

1.Palette简单介绍

Palette中文翻译:调色板,android系统允许我们动态的获取图片或者控件的颜色,来为布局控件提供颜色,保持统一的外观颜色值。

使用Palette需要到sdk\extras\android\support\v7\palette目录下-->打开libs目录-->android-support-v7-palette.jar包-->copy到你项目的libs目录下-->使用Palette。

2.Palette简单使用

<span style="font-size:18px;">Palette.generateAsync(bmp, new Palette.PaletteAsyncListener() {@Overridepublic void onGenerated(Palette palette) {Palette.Swatch swatch = palette.getVibrantSwatch();if(null != swatch) {mTextView.setBackgroundColor(swatch.getRgb());mTextView.setTextColor(swatch.getTitleTextColor());}}});</span>

由于在Android设备中,对图像的处理有可能是耗时操作,因此,Palette类通过异步接口onGenerated回调的方法 

通过调色板更改了TextViewde字体颜色和背景色

来获得Bitmap的颜色值。Palette类获得的颜色值有以下几种类型: 
<span style="font-size:18px;">Palette.Swatch a = palette.getVibrantSwatch();//有活力 Palette.Swatch b = palette.getDarkVibrantSwatch();//有活力 暗色Palette.Swatch c = palette.getLightVibrantSwatch();//有活力 亮色 Palette.Swatch d = palette.getMutedSwatch();//柔和 Palette.Swatch e = palette.getDarkMutedSwatch();//柔和 暗色Palette.Swatch f = palette.getLightMutedSwatch();//柔和 亮色 我们从以上颜色中可以获取到如下颜色值: int color1 = a.getBodyTextColor();//内容颜色 int color2 = a.getTitleTextColor();//标题颜色int color3 = a.getRgb();//rgb颜色 </span>



欢迎留言和评论!

博客地址:http://blog.csdn.net/caihongdao123 
下一篇  Android 5.0+ 解析(四)Toolbar控件
5 1
原创粉丝点击