如何为图像视图的一种颜色着色?

Posted

技术标签:

【中文标题】如何为图像视图的一种颜色着色?【英文标题】:How to tint one color of an imageview? 【发布时间】:2021-01-05 15:16:46 【问题描述】:

当我切换到夜间模式时,我有两种颜色的图标,我只想只有其中一个被彩色。

这是一种方法吗?

【问题讨论】:

如果它是一个向量,那么您可能可以使用github.com/devendroid/VectorChildFinder。找到路径并改变颜色 @ gautam在没有第三个库/项目的情况下有办法? span> 我不知道。我尝试找到一些android API,但我不能这样用它,它对我来说真的很好 【参考方案1】:

您可以从主题中获取颜色作为路径:

<vector xmlns:android="http://schemas.android.com/apk/res/android"
    android:
    android:
    android:viewportWidth="100"
    android:viewportHeight="100">
  <path
      android:fillColor="?colorPrimary"
      android:pathData="M 0 0 H 100 V 100 H 0 V 0 Z" />
</vector>

如果 day/night 主题中的属性 &lt;item name="colorPrimary"&gt;#D50000&lt;/item&gt; 有不同的值,它将按您的意愿工作

【讨论】:

以上是关于如何为图像视图的一种颜色着色?的主要内容,如果未能解决你的问题,请参考以下文章

如何用不同颜色为图像中的对象着色

如何为集合视图单元格使用图像选择器

如何在图像地图上为asp热点着色?

Visual Studio 扩展 - 如何为代码着色?

如何为背景图像添加背景颜色? [复制]

如何为图像设置 Alpha 通道颜色?