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

Xamarin Forms/Mobile Blazor Bindings iOS应用图片不显示Android正常问题

问题原因

该问题是iOS和Android平台的文件系统特性差异,以及Mobile Blazor Bindings的跨平台路径解析规则共同导致的:

  1. Android文件系统默认对路径大小写不敏感,只要文件名和目录名的字符匹配,大小写不一致也能正常读取资源;iOS的文件系统则是严格大小写敏感,路径和实际文件的大小写只要有一处不符就会加载失败。
  2. 旧版本的Mobile Blazor Bindings预览版存在iOS端WebView解析wwwroot相对路径的已知bug,也会导致静态图片加载失败。

解决方法

你可以按照以下顺序逐一排查修复:

  • 校验路径大小写完全匹配:确认实际的wwwroot下目录名是Images(首字母大写)还是images小写,图片文件名是Image.png还是image.png,保证razor页面中src属性写的路径和实际文件、目录的大小写完全一致。
  • 修正文件属性:除了设置「始终复制到输出目录」外,还要选中Image.png文件,在属性面板把「生成操作」修改为Content。
  • 调整路径写法:可以将路径改为带根路径标识的写法<img src="/Images/Image.png" style="max-width: 100%;"/>,也可以注入NavigationManager拼接绝对路径避免跨平台解析差异:
    @inject NavigationManager NavManager
    <h3>Test Image</h3>
    <img src="@($"{NavManager.BaseUri}Images/Image.png")" style="max-width: 100%;"/>
    
  • 升级依赖版本:将Mobile Blazor Bindings相关的Nuget包升级到0.5及以上的正式版,旧预览版的iOS静态资源加载bug已经在后续版本修复。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 01:51:03