【发布时间】:2017-08-25 19:22:04
【问题描述】:
我从 material.io 下载了一些图标,但它们只提供黑色图标。我看到了一个 youtube 视频,他们用来让你选择颜色。无论如何,我正在尝试将图标的颜色更改为白色。我没有运气。我试图在 android studio 中更改填充颜色,但它不起作用。任何帮助将不胜感激,例如将代码添加到的确切代码和文件。谢谢。
【问题讨论】:
我从 material.io 下载了一些图标,但它们只提供黑色图标。我看到了一个 youtube 视频,他们用来让你选择颜色。无论如何,我正在尝试将图标的颜色更改为白色。我没有运气。我试图在 android studio 中更改填充颜色,但它不起作用。任何帮助将不胜感激,例如将代码添加到的确切代码和文件。谢谢。
【问题讨论】:
你可以使用
android:tint="@android:color/white"
【讨论】:
如前所述,material.io 图标可以直接用 Android Studio 下载。此解决方案显示了矢量资产图标的导入,因为它们存储在单个位置(res/drawable),因此更易于管理,而图像资产将每个图标存储在特定密度文件夹(hdpi、xhdpi 等)中。
现在您将有两种设置图标颜色的选项
或
imageView.setColorFilter(ContextCompat.getColor(context, android.R.color.white),
PorterDuff.Mode.MULTIPLY);
【讨论】:
https://material.io/icons/ 实际上确实允许您下载白色图标。
但是,根据您的具体目标,有几种选择。如果您只是想要白色图标(而不是在运行时更改它们),您可能会发现这个适用于 Android Studio 的插件很有用:https://github.com/konifar/android-material-design-icon-generator-plugin
它允许您直接在 Android Studio 中以您想要的任何颜色生成材料设计图标。下载这些不同颜色图标的另一种方法是https://materialdesignicons.com/。
如果您确实想在运行时为图标着色,请尝试以下操作:
imageView.setColorFilter(ContextCompat.getColor(context, android.R.color.white),
PorterDuff.Mode.MULTIPLY);
【讨论】: