解决SVG引用Android颜色资源报错:Invalid color value @color/account_iv_contact_top_color
这个错误通常是由于在SVG文件中使用了Android中的颜色资源,但是SVG文件本身无法解析这些资源。为了解决这个问题,你可以尝试以下两种方法:
- 直接替换颜色资源
将SVG文件中的颜色资源直接替换为具体的颜色值。例如,将'@color/account_iv_contact_top_color'替换为'#FF0000'。
- 使用vectorDrawables.useSupportLibrary属性
这个属性可以让SVG文件使用Android支持库中的矢量图形,从而可以解析颜色资源。你可以在SVG文件的根元素中添加这个属性,例如:
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24"
android:tint="@color/account_iv_contact_top_color"
android:useSupportLibrary="true">
...
</vector>
这样就可以使用颜色资源了。注意,使用这个属性需要在build.gradle文件中添加以下代码:
android {
defaultConfig {
vectorDrawables.useSupportLibrary = true
}
}
原文地址: https://www.cveoy.top/t/topic/jkny 著作权归作者所有。请勿转载和采集!