在Fragment界面中,设置两个图片一致如下:

默认设置图片为:

binding.ivArrow.setImageResource(R.drawable.icon_down);

先获取默认图片,再和其它两张图片做对比,然后处理业务逻辑:

Drawable.ConstantState ivArrow = binding.ivArrow.getDrawable().getCurrent().getConstantState();

Drawable.ConstantState icon_up = getDrawable(R.drawable.icon_up).getConstantState();

Drawable.ConstantState icon_down = getDrawable(R.drawable.icon_down).getConstantState();

Log.e("--->ivArrow$", "$" + ivArrow);

Log.e("--->icon_up$", "$" + icon_up);

Log.e("--->icon_down", "$" + icon_down);

if (ivArrow.equals(icon_up)) {

binding.ivArrow.setImageResource(R.drawable.icon_down);

} else if (ivArrow.equals(icon_down)) {

binding.ivArrow.setImageResource(R.drawable.icon_up);

}

打印结果如下:

显然通过日志发现,每个图片的资源都不一致,这是为什么,通过点击getDrawable查看源码发现

这个不是我们想要的,我们要的是id,怎么解决呢,因为是在Fragment中,所以要加上 getActivity()

设置完后,看下效果

完整代码如下:

Drawable.ConstantState ivArrow = binding.ivArrow.getDrawable().getCurrent().getConstantState();

Drawable.ConstantState icon_up = getActivity().getDrawable(R.drawable.icon_up).getConstantState();

Drawable.ConstantState icon_down = getActivity().getDrawable(R.drawable.icon_down).getConstantState();

Log.e("--->ivArrow$", "$" + ivArrow);

Log.e("--->icon_up$", "$" + icon_up);

Log.e("--->icon_down", "$" + icon_down);

if (ivArrow.equals(icon_up)) {

binding.ivArrow.setImageResource(R.drawable.icon_down);

} else if (ivArrow.equals(icon_down)) {

binding.ivArrow.setImageResource(R.drawable.icon_up);

}

到此这篇关于Android中比较两个图片是否一致的文章就介绍到这了,更多相关Android 比较两个图片是否一致内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

时间: 2020-10-29

android 图像对比,Android中比较两个图片是否一致的问题相关推荐

  1. android 图像对比,图像对比在UI自动化中的应用

    引子 继多版本模拟器的支持工作告一段落之后,如何利用这些技术产生更大的价值,成为了接下来需要思考的问题.当然,接下来的课题就涉及到了今天的图像对比技术.说来有点内疚,虽然也算是科班出身,只可惜大学还没 ...

  2. android wear tizen,三星tizen和谷歌android wear对比 android wear和三星tizen哪个好

    三星tizen和谷歌android wear对比: 说实话,要问目前智能手表产品哪个系统最好,其实没有人能给出准确的答案.除去苹果Apple Watch和watchOS之外,还剩下了谷歌的Androi ...

  3. Android --- 怎么样在布局中显示服务器的图片,或者是后台项目中的图片+connect failed: ECONNREFUSED (Connection refused)问题的解决(文章最后)

    今天在写Android项目的时候遇到这样一个问题,我已经从后台SpringBoot中拿到了图片id,但是要怎么样显示到AS端呢? 首先看到了网上有用Glide的,我在这里整理一下简单明了的操作步骤 1 ...

  4. android图像涂鸦,Android Studio设计一个能在图片上面涂鸦的程序

    一.内容 设计两种形式的对话框程序,一种是发出提示信息的普通对话框,另一种是用户登录对话框. 二.实现 1.主界面 activity_main.xml xmlns:app="http://s ...

  5. android bitmap对比,Android Bitmap和Drawable的对比

    Android Bitmap和Drawable的对比 Bitmap - 称作位图,一般位图的文件格式后缀为bmp,当然编码器也有很多如RGB565.RGB888.作为一种逐像素的显示对象执行效率高,但 ...

  6. android图像边缘检测,Android图像处理系统1.4图像的锐化-边缘检测

    Android图像处理系统1.4图像的锐化-边缘检测 图像的锐化-边缘检测:(Robert Gradient.Sobel Gradient.Laplace Gradient) @author:郑海波 ...

  7. android 图像对比度,Android OpenGL ES - 反相、曝光、对比度、饱和度、色调滤镜

    OpenGL ES - 简单滤镜 默认滤镜 vertex shaderattribute vec4 position; attribute vec4 inputTextureCoordinate; v ...

  8. Android iText向pdf模板插入数据和图片

    需求 这些日志在写App程序,有这么一个需求,就是需要生成格式统一的一个pdf文件,并向固定表格中填充数据,并且再在pdf中追加两页图片. 方案 手工设计一个pdf模板,这个具体步骤就不再赘述,可以网 ...

  9. 【Android 内存优化】Android 工程中使用 libjpeg-turbo 压缩图片 ( 初始化压缩对象 | 打开文件 | 设置压缩参数 | 写入压缩图像数据 | 完成压缩 | 释放资源 )

    文章目录 一.使用 libjpeg-turbo 压缩图片流程 二.初始化 JPEG 压缩对象 三.打开文件 四.设置压缩参数 五.开始压缩 六.循环写入压缩数据 七.完成图片压缩及收尾 八.libjp ...

最新文章

  1. 万航单位换算器 V1.0 绿色版
  2. 详解linux系列之sendmail邮箱服务的安装及配置
  3. 正则表达式:密码中至少包含大写字母、小写字母、数字、特殊字符等字符中的2种或3种
  4. 上海找python工作容易吗_Python程序员去上海工作有多难?
  5. poj 1060 Modular multiplication of polynomials
  6. VS2008+OpenCL环境配置
  7. 013年十大急需的热门IT技能
  8. 【英语学习】【Level 07】U08 Old Stories L6 Looking back
  9. HDOJ1874 ( 畅通工程续 ) 【单源最短路径】
  10. 基于JAVA+SpringMVC+Mybatis+MYSQL的停车预约管理系统
  11. 当有多个设备online时,命令行窗口通过adb连接指定设备方法
  12. [转]快速矩阵快速幂
  13. 虚拟机系统和windows主机系统的文件互传方法 ——WinSCP使用
  14. 中介者模式 java_Java设计模式学习记录-中介者模式
  15. LLC谐振电路(一) 整流电路总结
  16. 家用路由器与企业路由器有什么区别
  17. 基于Web SCADA平台的食品饮料行业数字化系统
  18. 行为识别特征提取综述
  19. vb/vb.net开发精粹(19)
  20. Office365 - 如何修改Teams group关联的Email Address?

热门文章

  1. 从零开始学习docker(十九)Swarm mode 集群服务间通信--RoutingMesh
  2. PandasSQL语法归纳总结,真的太全了
  3. Pandas实用技能,将列(column)排序的几种方法
  4. 8000字 | Python数据可视化,完整版实操指南 !
  5. mysql自动写入创建时间_mysql 自动记录数据插入及最后修改时间
  6. python内置类属性_Python内置方法和属性应用:反射和单例(推荐)
  7. append 换行_代码风格:答应我,让括号换行吧!!
  8. php中td的属性设置,html table表格是什么?table标签中各种属性的使用方法
  9. apeach和php合作原理,apache与php工作原理分析
  10. 查看Unity工程版本