方法

private fun setGreyImg(img: ImageView){// 1. 设置颜色过滤器val matrix = ColorMatrix()matrix.setSaturation(0F)//0-灰度,1-原色val cmcf = ColorMatrixColorFilter(matrix)// 2. 设置设置画笔val paint = Paint()paint.colorFilter = cmcf// 3. 设置画布val bm = img.drawToBitmap(Bitmap.Config.ARGB_8888)val canvas = Canvas(bm)// 4.绘图canvas.drawBitmap(bm,0F,0F,paint)// 5.赋值img.load(bm)
}

其中第5步的赋值操作,用到了Coil,这是一个Android图片加载库.

因其利用了Kotlin协程的方式加载图片,所以对于Java代码不适用。

如果没有导入其依赖or使用的是Java代码,改成自己的图片加载方法即可。

调用

setGreyImg(yourImgView)

效果图

图片是网络上随便找到

Android中将图片设为灰度(Kotlin)相关推荐

  1. android 圆形裁剪,Android中将图片裁剪成圆形的方法

    直接上代码吧,如果需要拍照或者从相册中选择图片的功能,推荐一个开源库,用起来很方便 http://www.jianshu.com/p/35ce3b82773e //裁剪图片的第三方库http://ww ...

  2. Android中将图片从相册取出且获取到图片在手机中的地址

    1. private final String IMAGE_TYPE = "image/*"; private final int IMAGE_CODE = 0;   //这里的I ...

  3. android pdf转jpg格式,在Android中将图片转换为PDF

    我想你正在使用iText Library将文本转换成pdf.使用它将图像转换为pdf. import java.io.*; import com.lowagie.text.*; import com. ...

  4. Android之给图片去色,返回灰度图片以及ColorMatrix中setSaturation方法的用法

    原图: 效果图: 实现以上效果其实很简单,直接上代码: public class MainActivity extends Activity {private Button btn_start;pri ...

  5. android生成png图片,Android 中将 base64图片 解码为.png图片

    android 中将 "base64图片" 解码为".png"图片 参考: 方法一 String base64Img = ""; // 若包 ...

  6. 在visio中将图片变成黑白,将图片对象进行颜色转换 彩色图转灰度图

    标题:在visio中将图片变成黑白,将图片对象进行颜色转换 彩色图转灰度图 选中图片,右击,选中**"设置对象格式"**

  7. android调整图片的色相,饱和度,灰度

    android调整图片的色相,饱和度,灰度 /*** 调整图片的色相,饱和度,灰度** @param srcBitmap* @param rotate* @param saturation* @par ...

  8. android 从图片获取二维码

    之前的博客我记得讲过关于扫描二维码的内容,昨天,组长让我不仅可以扫描获取二维码,还可以通过图片获取里面的二维码.比如别人拍了一张二维码的照片,发送给你,app应该可以获取图片的二维码. 自己在网上查了 ...

  9. Android中图片的处理(放大缩小,去色,转换格式,增加水印等)(转)

    原文地址:http://menxu.lofter.com/post/164b9d_3ebf79 package com.teamkn.base.utils; import java.io.ByteAr ...

  10. android 自定义图片裁剪,Android图片裁剪工具封装

    笔者从零开始开发Android,而且是跳过java直接使用kotlin开发,这其中的好处是可以避开java这门传统语言诸多的潜规则,难处是相比资深Android开发者少了许多可以现用的工具库.比如An ...

最新文章

  1. 干货!top白帽子 Gr36_ 手把手教你挖漏洞|2017 先知白帽大会
  2. Linux Shell常用技巧(十二) Shell编程
  3. 中国各类基金资助项目英文翻译(中英文对照)
  4. sql语句字符串处理大全
  5. C、C++和MFC中文件的操作
  6. 计算机中管理用户数据的单位是,文件_操作系统管理用户数据的单位是______。...
  7. js版palppy brid代码_从 JS 引擎到 JS 运行时(上)
  8. 一篇关于实体链接的小综述
  9. TCP/IP详解--拥塞控制 慢启动 快恢复 拥塞避免
  10. Go语言URL编码方案
  11. Power收集[单调队列+DP]
  12. NOIP2018(普及组 ) 赛后感想 题解
  13. 数据分析之Excel的基本功能(下)
  14. UVA 10074 Take the Land(最大子矩阵和变形)
  15. 解决图片不显示的问题
  16. 关于错误Failure [INSTALL_FAILED_ALREADY_EXISTS]的解决办法
  17. 短信接口防刷,限制IP的访问 部分笔记!
  18. 抓包工具fiddler,wireshark,charles
  19. mongodb near java_简阅MongoDB JVM开发库
  20. python安装AES库及使用

热门文章

  1. Inverting the Generator of a GAN 生成器反向
  2. 计算机网络 什么是帧头部,帧头是什么意思
  3. python 中的拷贝、浅拷贝与深拷贝
  4. 2020浙江大学软件学院软件工程考研经验分享
  5. 魔兽争霸---兽族打法
  6. linux 回收站恢复文件怎么恢复文件,清空回收站后如何恢复已被删除的文件?
  7. 注意力机制attention图解
  8. Unirech:阿里云国际版免备案虚拟主机的优点与缺点
  9. 国外优秀JAVA技术网站推荐
  10. 教你如何在短期内做好会员运营快速拉新用户