You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

修改XML填充色后,Jetpack Compose显示的SVG Icon颜色未变更

解决Jetpack Compose Icon加载SVG颜色不生效的问题

问题根源

Jetpack Compose的Icon组件默认会自动用主题里的文字颜色给图标染色,这会直接覆盖你在SVG里设置的粉色,所以图标还是显示黑色。

解决办法

  • 关闭自动染色:给Icon加个tint = Color.Unspecified参数,让组件使用SVG本身的颜色:
    Icon(
        painter = painterResource(id = R.drawable.liked),
        contentDescription = null,
        tint = Color.Unspecified
    )
    
  • 检查SVG的fill属性:确认SVG里的fill是具体的粉色值(比如fill="#FF69B4"),别用fill="currentColor"——这个值会继承文本颜色,依然会被主题覆盖。
  • 清缓存重建项目:有时候Android Studio的资源缓存会拖后腿,先执行Build -> Clean Project,再Rebuild Project试试。

内容的提问来源于stack exchange,提问作者Praneeth Bhargav

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 18:18:28