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

迁移Xamarin Forms至MAUI iOS:如何使用1x/2x/3x规格.png图片?

在MAUI中使用1x/2x/3x规格PNG图片的解决方案

针对迁移Xamarin Forms到MAUI时无法批量转换PNG到SVG,且带1x/2x/3x标识的PNG因命名规则报错的问题,有两种可行方案:

方案一:按MAUI资源规范调整文件结构

MAUI支持通过资源限定符目录区分不同缩放比例的图片,无需在文件名中添加1x/2x/3x标识:

  • 在Resources/Images目录下创建三个子文件夹:scale-100(对应1x)、scale-200(对应2x)、scale-300(对应3x)
  • 将原icon1x.png、icon2x.png、icon3x.png分别放入对应文件夹,并重命名为统一文件名(如icon.png)
  • MAUI会自动根据设备屏幕缩放比例,加载对应目录下的图片,同时文件名完全符合规则要求

方案二:修改项目配置绕过文件名验证

如果不想修改现有图片文件名,可通过调整csproj配置禁用默认资源命名检查,并手动指定资源属性:

  1. 打开项目的.csproj文件,添加以下配置禁用默认资源项自动包含:
<PropertyGroup>
  <EnableDefaultResourceItems>false</EnableDefaultResourceItems>
</PropertyGroup>
  1. 手动添加图片资源配置,指定逻辑名称和缩放比例,示例:
<ItemGroup>
  <MauiImage Include="Resources\Images\icon1x.png" LogicalName="icon.png" Scale="1.0" />
  <MauiImage Include="Resources\Images\icon2x.png" LogicalName="icon.png" Scale="2.0" />
  <MauiImage Include="Resources\Images\icon3x.png" LogicalName="icon.png" Scale="3.0" />
</ItemGroup>

这样MAUI会将这些不同文件名的图片识别为同一资源的不同缩放版本,同时绕过原有的文件名格式检查。

注意:方案一更贴合MAUI的资源管理设计,长期维护更友好;方案二适合迁移初期快速复用现有资源的场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 09:43:27