Palette的简单使用
Palette实际就是一个调色板,用来分析图片的颜色特征,如柔和的,鲜艳的,等等,可用来分析图片的色彩特征,这样可以用来保证应用颜色的统一。
- 使用之前先要在gradle中进行配置
dependencies {...compile 'com.android.support:appcompat-v7:21.0.3'compile 'com.android.support:palette-v7:21.+'...
}
Palette的基本使用如下:
BitmapDrawable drawable = (BitmapDrawable) iv.getDrawable();Bitmap bitmap = drawable.getBitmap();//得到bitmap里面的的一些色彩信息---通过Palette类分析出来的
// Palette palette = Palette.generate(bitmap);//异步任务---可能分析的图片会比较大或者颜色分布比较复杂,会耗时比较久,防止卡死主线程。Palette.from(bitmap).generate(new PaletteAsyncListener() {@Overridepublic void onGenerated(Palette palette) {//暗、柔和的颜色int darkMutedColor = palette.getDarkMutedColor(Color.BLUE);//如果分析不出来,则返回默认颜色//暗、柔和int lightMutedColor = palette.getLightMutedColor(Color.BLUE);//暗、鲜艳int darkVibrantColor = palette.getDarkVibrantColor(Color.BLUE);//亮、鲜艳int lightVibrantColor = palette.getLightVibrantColor(Color.BLUE);//柔和int mutedColor = palette.getMutedColor(Color.BLUE);//柔和int vibrantColor = palette.getVibrantColor(Color.BLUE);//获取某种特性颜色的样品
// Swatch lightVibrantSwatch = palette.getLightVibrantSwatch();Swatch lightVibrantSwatch = palette.getVibrantSwatch();//谷歌推荐的:图片的整体的颜色rgb的混合值---主色调int rgb = lightVibrantSwatch.getRgb();//谷歌推荐:图片中间的文字颜色int bodyTextColor = lightVibrantSwatch.getBodyTextColor();//谷歌推荐:作为标题的颜色(有一定的和图片的对比度的颜色值)int titleTextColor = lightVibrantSwatch.getTitleTextColor();//颜色向量float[] hsl = lightVibrantSwatch.getHsl();//分析该颜色在图片中所占的像素多少值int population = lightVibrantSwatch.getPopulation();}
获取到对应的图片之后,使用Palette进行色彩分析,提取出不同的颜色,使用这些颜色对该界面的其他控件进行颜色的赋值,保证应用的主题统一。
Palette的简单使用相关推荐
- Android - 一个似神器而非神器之Palette探索与实践
背景 前段时间,在进行项目开发的时候,UI给了一个银行卡相关的列表,每个item都是渐变效果,直接使用背景图片,直接导致的是包增加近2M. 列表示例( >20个) 简单做法:服务器返回对象银行卡 ...
- lisp创建PaletteSet_CAD二次开发(.NET)之PaletteSet和Palette
在CAD中经常用到停靠或浮动的PaletteSet,比如:特性.图层特性管理器.工具选项板等(以下截图来自AutoCAD2010界面). 特性PaletteSet(停靠) 图层特性管理器Palette ...
- android palette组件用法,Android Palette(调色板)的使用
一.Palette的简单介绍 android-support-v7-palette 里面的Palette是Android L SDK 中的新特性,可以使用 Palette 从图像中提取出突出的颜色(主 ...
- Chrome最好用的插件都在这里了
项目地址:https://github.com/zhaoolee/ChromeAppHeroes 在Github上,zhaoolee帮我们收集了60+多个Chrome插件,而且每一个插件都有一份中文说 ...
- 【赶紧收藏】22款设计师必备色彩工具,轻松打造别样的“视觉诱惑”
色彩,作为网页或App设计的重要视觉元素之一,不仅能够帮助UI/UX设计师有效地展示和突出界面或产品相关信息和功能, 而且还能够轻松自然的流露和传达设计师相应情感,迅速吸引用户眼球的同时,引起用户情感 ...
- C语言读取bmp图像并做简单显示
C语言读取bmp图像并做简单显示) bmp文件格式 读取bmp文件信息并展示 bmp文件格式 bmp文件大体上分为四个部分: bmp文件构成 位图文件头BITMAPFILEHEADER 位图信息头BI ...
- python 制作高斯mask_【趣味案例】用Python制作各种酷炫词云图,原来这么简单!...
一.简介词云图是文本挖掘中用来表征词频的数据可视化图像,通过它可以很直观地展现文本数据中地高频词:! 图1 词云图示例 在Python中有很多可视化框架可以用来制作词云图,如pyecharts,但这些 ...
- Google Palette算法详解以及OC化
1.背景 在发现百日大战时景项目中.有一个创新玩法,就是通过筛选图片主色调来显示如红色系,蓝色系照片.这就涉及到了图片主色调的提取.技术选型为客户端进行图片颜色提取,上传到服务端.但是由于项目时间限制 ...
- 使用Palette类提取图片的颜色信息
原文出处:http://qichaochen.github.io/2014/11/16/105-Android-5.0-Palette-01/ 在Material Design设计中很重要的一部分内容 ...
最新文章
- QT-qevent 事件的accept()和ignore()
- 数据结构基础:栈(Stack)
- 阐述Spring框架中Bean的生命周期?
- fastdfs 报错 err: TrackerTask RecvHeader recv resp status 28 != 0
- 容器技术Docker K8s 13 容器服务Kubernetes版ACK详解-使用镜像快速创建有状态应用
- 相亲交友源码中,音频AAC解码的实现代码
- IPMI IPMB协议
- android开发:NDK开发配置
- 【懒人必备神器】教你用Python做一个自动抽奖程序啦~
- 【WPF】用100行C#代码实现扫雷
- 可控硅及其应用 -- 功率调节、电机调速
- php 抓取淘宝商品详情
- Elasticsearch 数据迁移方案
- 测绘-编写数字高程模型(DEM)内插程序
- 机器学习——VC维问题
- 电气-接触器与空气开关
- python读取串口数据 绘图_使用Python串口实时显示数据并绘图的例子
- 自己怎么做引流推广?利用QQ群截流日引流量100
- 重型卡车、拖车和客车未来发展之路
- 计算机教室八字格言,浅谈如何深化多媒体电脑教学|教学理念八字格言
热门文章
- 符号引用和直接引用的区别
- 低频纹波、高频纹波、环路纹波、共模噪声、谐振噪声详解
- redis实现共同好友或者共同关注。
- 安徽二级计算机考试准考证打印入口
- 如何有效禁止qDebug的输出?qDebug().nospace()和noquote()的作用是什么?
- 双麦阵列回音消除及降噪模块 A-47设计用和强噪音下实测效果视频
- HTML开发技术【2】
- mysql外键创建不成功/失效
- 纯虚类(virtual class)和纯虚方法(pure virtual function)
- 数据分析问题(异常值识别)中数据预处理部分流程(含2022年全国服务外包大赛实例)