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

Kotlin Multiplatform中Vector XML图片无法显示问题求助

Compose加载Vector XML资源不显示的排查方案

以下是几个常见问题点及对应解决方法:

  • 替换废弃的vectorResource API
    Compose中的vectorResource已被官方废弃,推荐使用painterResource加载Vector资源,修改代码如下:

    Image(
        painter = painterResource(id = R.drawable.swords),
        contentDescription = null,
        modifier = Modifier.width(82.dp)
            .clip(RoundedCornerShape(16.dp))
            .background(Color.DarkGray)
    )
    

    若项目使用自定义Res类,需确认Res.drawable.swords映射的资源ID完全正确,直接使用系统生成的R.drawable.swords更不易出错。

  • 检查Vector XML资源的配置
    打开swords.xml文件,验证:

    • 未设置android:alpha="0"、android:tint="@android:color/transparent"这类会隐藏图标的属性;
    • 根节点vector的android:width、android:height使用dp等相对单位,而非固定像素;
    • 路径节点path的android:fillColor非透明色,且路径包含实际绘制内容。
  • 重新编译资源
    执行Clean Project后再Rebuild Project,确保Vector资源被正确编译到项目中,避免资源缓存导致的加载异常。

  • 排查Modifier干扰
    暂时移除clip、background等Modifier,仅保留width测试图片是否能显示,逐步添加Modifier排查是否有属性导致图片被遮挡或隐藏。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 15:03:16