android - 如何检查图像视图上是否设置了背景颜色?
问题描述
如果图像视图还没有背景颜色,我想在图像视图上设置背景颜色。
我正在尝试这样的事情,但显然它不会工作。我该如何设置
private ImageView myImage = findViewById(R.id.myimage);
if (myImage.getBackground() != null) {
myImage..setBackgroundColor(0x00000000)
}
else {
myImage.setBackgroundColor(Color.rgb(100, 100, 50));
}
这项设置背景颜色并将其删除的工作,但只是第一次。问题是当背景设置为0x00000000
透明时,因此不为空。是否可以将背景颜色设置为空?还是我需要将背景默认设置为透明并检查它是否透明?
解决方案
你不需要setBackgroundColor
透明。setBackgroundColor
将为背景创建一个ColorDrawable
。由于setBackgroundColor
需要您提供它,因此ColorInt
您不能使用null
. 你可以做的就是setBackgroundColor(0x00000000)
用setBackground(null)
推荐阅读
- lua - 如何使用 init.lua 而不是 init.vim
- javascript - 从 JavaScript 向不同文件夹中的 C# 控制器进行 ajax 调用
- c++ - Tesseract OCR (C++) 无法评估输出字符串
- jestjs - 使用 Yarn 2 时如何修补 jest-rutime?
- c++ - C++中char指针如何引用函数名
- rest - 如何修复 Postman 中的 403 禁止错误
- c++ - 如何添加对其他项目的 .lib 存根的引用
- php - 需要在 PHP 中进行破坏吗?
- java - Spring Cloud Gateway:处理健康检查之间对不可用服务的访问
- ios - 如何在应用程序处于后台时监控电池电量然后发送推送通知?IOS 14