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

Xamarin.Forms图片无法在手机端显示的问题求助

Xamarin.Forms 图片无法在手机端显示的排查与解决

问题场景

用Xamarin.Forms开发时,添加的图片在手机上完全不显示,试过将Image的Source设为logo.png、icons.logo.png、ArduinoNotes.icons.logo.png,都没效果。

相关代码

C# 代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Xamarin.Forms;

namespace ArduinoNotes
{
    public partial class MainPage : ContentPage
    {
        public MainPage()
        {
            InitializeComponent();
        }
        protected override void OnAppearing()
        {
            base.OnAppearing();
            NavigationPage.SetHasNavigationBar(this, true);
        }
    }
}

XAML 代码

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="ArduinoNotes.MainPage">
    <ContentPage.ToolbarItems>
        <ToolbarItem
            Text="a"/>
    </ContentPage.ToolbarItems>
    <StackLayout>
        <Image x:Name="mainImage"
               Source="icons/logo.png"
               WidthRequest="50"
               HeightRequest="50">
        </Image>
    </StackLayout>
</ContentPage>

项目结构:图片存放在项目根目录下的icons文件夹内。


排查与解决方法

1. 必做:检查各平台的图片生成操作

Xamarin.Forms对不同平台的资源生成操作有严格要求,这是最常见的问题根源:

  • Android:右键icons/logo.png→属性,将「生成操作」设为AndroidResource
  • iOS:把图片添加到项目的Resources文件夹(或保持现有结构),将「生成操作」设为BundleResource
  • UWP:设置「生成操作」为Content,同时将「复制到输出目录」设为「如果较新则复制」

2. 正确设置图片路径

根据项目类型选择对应的路径写法:

共享项目结构

直接用相对路径即可,和你XAML里写的icons/logo.png一致,但要保证各平台的图片文件路径和共享项目完全匹配,且生成操作正确。

.NET标准库项目

如果是.NET标准库,需要把图片设为嵌入式资源(右键图片→属性→生成操作→嵌入式资源),然后在代码中加载:

public MainPage()
{
    InitializeComponent();
    mainImage.Source = ImageSource.FromResource("ArduinoNotes.icons.logo.png", typeof(MainPage).Assembly);
}

此时XAML中可以留空Source,或者通过绑定实现。

3. 其他排查点

  • 文件名大小写:Android平台对文件名大小写敏感,确保代码里的logo.png和实际文件名完全一致
  • 清理重建:清理整个解决方案,再重新生成,避免缓存导致资源不加载
  • 图片有效性:检查图片是否是完好的PNG格式,没有损坏

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 16:44:54