如何在 android studio 中更改图标颜色

问题描述 投票:0回答:9

我从 material.io 下载了一些图标,但他们只提供黑色的图标。我看到了一个 youtube 视频,他们用来让你选择颜色。无论如何,我正在尝试将图标的颜色更改为白色。我没有任何运气。我试图在 android studio 中更改填充颜色,但它不起作用。任何帮助将不胜感激,例如确切的代码和要添加代码的文件。谢谢。

android colors icons
9个回答
84
投票

你可以简单地使用

android:tint="@android:color/white"


30
投票

您可以直接在Android Studio中下载这些图片

res > 右键单击 > 新建 > 图像资源并选择

  • 图标类型:操作栏和选项卡图标
  • 资产类型:剪贴画
  • 主题:自定义

你可以选择任何你想要的剪贴画,选择颜色,填充等......


10
投票

如前所述,可以直接使用Android Studio下载material.io图标。此解决方案显示导入矢量资产图标更易于管理,因为它们存储在单个位置(res/drawable),而不是将每个图标存储在特定密度文件夹(hdpi、xhdpi 等)中的图像资产。

  1. 展开“res”文件夹
  2. 右键单击drawable
  3. 将鼠标悬停在“新”上
  4. 选择“矢量资源”

  1. 单击“图标”旁边的图像
  2. 选择所需的 material.io 图标
  3. 为图标命名
  4. 选择“下一步”

现在您将有两种设置图标颜色的选项

  1. 在布局中使用 ImageView 的 android:tint 属性。这是我的偏好,因为可以在运行前查看图标。

  1. 在Java中。

imageView.setColorFilter(ContextCompat.getColor(context, android.R.color.white), 
        PorterDuff.Mode.MULTIPLY);


4
投票

https://material.io/icons/ 实际上可以让你下载白色图标。

但是,根据您具体想要做什么,有几种选择。如果您只是想要白色图标(而不是在运行时更改它们),您可能会发现这个适用于 Android Studio 的插件很有用:https://github.com/konifar/android-material-design-icon-generator-plugin

它允许您直接在 Android Studio 中以您想要的任何颜色生成 Material Design 图标。下载这些不同颜色的图标的另一种选择是https://materialdesignicons.com/.

如果你想在运行时给图标上色,试试这样的事情:

imageView.setColorFilter(ContextCompat.getColor(context, android.R.color.white), 
        PorterDuff.Mode.MULTIPLY);

0
投票

您可以从 material.io 下载白色图标。还要看看主题和主题叠加


0
投票

代替

android:src

我用属性

android:foreground

android:foreground="@drawable/ic_add"

0
投票

对于那些没有得到他们想要的东西但尝试改变

PorterDuff
模式的人,以下是为我做的

imageView.setColorFilter(ContextCompat.getColor(context, android.R.color.white), 
    PorterDuff.Mode.SRC_ATOP);

0
投票

也许 app:iconTint 帮助你,我写这个是因为以下参考。 材料设计 3


0
投票

使用 Android Compose,你可以尝试:

Icon(
  painter = painterResource(id = iconId),
  contentDescription = null,
  modifier = Modifier.size(28.dp),
  tint = MaterialTheme.colorScheme.secondary // set the color of your choice
)

© www.soinside.com 2019 - 2024. All rights reserved.