参考地址:https://github.com/DingMouRen/PaletteImageView

简介

  • 可以解析图片中的主色调,默认将主色调作为控件阴影的颜色
  • 可以自定义设置控件的阴影颜色
  • 可以控制控件四个角的圆角大小(如果控件设置成正方向,随着圆角半径增大,可以将控件变成圆形)
  • 可以控制控件的阴影半径大小
  • 可以分别控制阴影在x方向和y方向上的偏移量
  • 可以将图片中的颜色解析出六种主题颜色,每一种主题颜色都有相应的匹配背景、标题、正文的推荐颜色

build.gradle中引用

compile 'com.dingmouren.paletteimageview:paletteimageview:1.0.7'

参数控制:

2.阴影颜色默认是图片的主色调

3.图片颜色主题解析

使用

<com.dingmouren.paletteimageview.PaletteImageViewandroid:id="@+id/palette"android:layout_width="match_parent"android:layout_height="wrap_content"app:palettePadding="20dp"app:paletteOffsetX="15dp"app:paletteOffsetY="15dp"/>mPaletteImageView.setOnParseColorListener(new PaletteImageView.OnParseColorListener() {@Override//解析图片的颜色完毕public void onComplete(PaletteImageView paletteImageView) {int[] vibrant = paletteImageView.getVibrantColor();int[] vibrantDark = paletteImageView.getDarkVibrantColor();int[] vibrantLight = paletteImageView.getLightVibrantColor();int[] muted = paletteImageView.getMutedColor();int[] mutedDark = paletteImageView.getDarkMutedColor();int[] mutedLight = paletteImageView.getLightMutedColor();}@Override//解析图片的颜色失败public void onFail() {}});     

xml属性

xml属性 描述
app:palettePadding 表示阴影显示最大空间距离。值为0,没有阴影,大于0,才有阴影。
app:paletteOffsetX 表示阴影在x方向上的偏移量
app:paletteOffsetY 表示阴影在y方向上的偏移量
app:paletteSrc 表示图片资源
app:paletteRadius 表示圆角半径
app:paletteShadowRadius 表示阴影模糊范围

公共的方法

方法 描述
public void setShadowColor(int color) 表示自定义设置控件阴影的颜色
public void setBitmap(Bitmap bitmap) 表示设置控件位图
public void setPaletteRadius(int raius) 表示设置控件圆角半径
public void setPaletteShadowOffset(int offsetX, int offsetY) 表示设置阴影在控件阴影在x方向 或 y方向上的偏移量
public void setPaletteShadowRadius(int radius) 表示设置控件阴影模糊范围
public void setOnParseColorListener(OnParseColorListener listener) 设置控件解析图片颜色的监听器
public int[] getVibrantColor() 表示获取Vibrant主题的颜色数组;假设颜色数组为arry,arry[0]是推荐标题使用的颜色,arry[1]是推荐正文使用的颜色,arry[2]是推荐背景使用的颜色。颜色只是用于推荐,可以自行选择
public int[] getDarkVibrantColor() 表示获取DarkVibrant主题的颜色数组,数组元素含义同上
public int[] getLightVibrantColor() 表示获取LightVibrant主题的颜色数组,数组元素含义同上
public int[] getMutedColor() 表示获取Muted主题的颜色数组,数组元素含义同上
public int[] getDarkMutedColor() 表示获取DarkMuted主题的颜色数组,数组元素含义同上
public int[] getLightMutedColor() 表示获取LightMuted主题的颜色数组,数组元素含义同上

懂得智能配色的ImageView,还能给自己设置多彩的阴影(PaletteImageView)相关推荐

  1. php美化字体带边框,还可以为其设置带图案的线条做为字体边框

    在工作和学习中,有时为了封面内容好看,常常需要对文字进行效果上的修改.虽然PS在图形文字处理上有强大的功能,但是如果要求不高的话,小编还是认为用WPS就可以了.下面就来看看具体操作. 一.为" ...

  2. 参加动物AI奥运会,让你的智能体比狗狗还聪明,挣取3.2万美元奖金

    晓查 发自 凹非寺  量子位 报道 | 公众号 QbitAI AI已经在很多方面战胜人类,比如围棋.星际争霸游戏,人类已经打不过AI了.但是在面对真实的生存环境时,AI的表现有时还不如动物. 乌鸦在喝 ...

  3. 移动智能时代,为何还需要猎网平台?

    今年5月中旬,一款名为WNCRYPT"永恒之蓝"的勒索病毒袭击了互联网,全世界有超过150个国家和地区的计算机系统被感染,中国区域亦并未幸免.不过堪称欣慰的是,这款破坏力极大的病毒 ...

  4. 浙江移动智能语音服务器,电视还能这样玩?中国移动智能语音遥控器,让电视机听你的...

    原标题:电视还能这样玩?中国移动智能语音遥控器,让电视机听你的 随着物联网技术的快速发展,我们的生活也变得越来越便利. 智能家居.远程监控.智慧安防等,先进的科技让我们的生活有了更多惊喜.而现在,中国 ...

  5. 人工智能全球赛:中国“智能+”要冲浪还缺百万人才

    从日本经典动画<攻壳机动队>人工智能(AI)技术的运用,再到最近好莱坞影片<阿丽塔:战斗天使>的机械人,在科幻电影中,AI已经成为最常见的主题之一. 而屏幕之外的现实世界,不论 ...

  6. 拥有无数个智能摄像头,却还没让城市睁开双眼

    智能摄像头之于智慧城市,已经成了一项必然的存在.仿佛城市里要是没有三五千个智能摄像头.张学友演唱会上没抓到过逃犯,整个城市在智慧化进度上就矮人一截一样. 从全球范围来看,通过智能摄像头观测城市运行状况 ...

  7. ChatGPT:我围观了量子位MEET2023智能未来大会,还当了一回课代表

    编辑部 ChatGPT 发自 凹非寺 量子位 | 公众号 QbitAI 什么是"MEET2023智能未来大会"? 大会上来了哪些重磅嘉宾? 他们在大会上探讨了什么主题? 没错!Ch ...

  8. 在人工智能市场的泡沫下,智能名片的火热还会持续多久?

    在人工智能名片合作伙伴大会上,人民创投总经理.阿里云研究院战略总监.联想副总裁等人就人工智能的发展趋势.市场泡沫等话题进行了讨论,并提及人工智能名片未来发展的问题.2018年以前,智能名片市场还是空白 ...

  9. 智能可穿戴设备还能怎么玩

     今天最受人们关注的应该就是小米2014年度发布会,日前雷军在微博上宣传的小米智能手环,据说也会在此次大会上亮相. 从2013年google发布谷歌眼镜以来,国内就兴起了一股智能可穿戴设备的创业浪 ...

最新文章

  1. strict aliasing
  2. JavaMelody+Spring+struts2配置详解——系统监控
  3. java 继承与多态
  4. Android Stdio 添加jar或aar
  5. CMD各段定义与分配方法指引
  6. springboot小笔记
  7. angular - 如何运行在起来 - 使用nginx
  8. 页面乱码及页面传值出现乱码
  9. python 简单trace 过滤处理
  10. 操作系统之进程管理:17、死锁
  11. java 字节编码_java中字符与字节的编码关系
  12. 编程范式:命令式编程(Imperative)、声明式编程(Declarative)和函数式编程(Functional)...
  13. Linux进阶之bond链路聚合
  14. .Net中TextBox对于焦点的控制(二)
  15. python行业中性_燃爆!17行Python代码做情感分析?你也可以的
  16. python中的加减乘除符号属于什么_python中的加减乘除小知识
  17. 印象笔记mac版 同步问题_印象笔记国际版无法登陆/同步问题
  18. 第二代支付系统专题之报文篇(二)大额支付报文完整版(含二代新增功能业务说明)
  19. 从2019年移动数字金融与电子商务反欺诈白皮书看金融反欺诈攻防战
  20. 这是一个猜数字的游戏。判断输入的第1个字符,略过其余的字符。

热门文章

  1. 当一个GameObject有两个Collider组件时,Physics Material不起作用
  2. 解决在phpmyadmin中执行sql语句出现的错误:Unknown storage engine 'InnoDB'
  3. “模板”学习笔记(7)-----数组模板+对象数组举例
  4. html+css+js实现登录页面
  5. 案例:include指令的具体用法
  6. python实现第一个web_使用Python的Flask框架来搭建第一个Web应用程序
  7. java吧 博客系统_【Java】SpringMVC + Mybatis 实现的个人博客系统
  8. fluent 命令流_FLUENT混合流体中颗粒运动模拟
  9. 函数的参数个数是不固定_EXCEL这些序号技巧,你还真不一定都知道
  10. EMC测试仪器_电巢学堂:单片机系统EMC测试和故障排除