无法在Android模拟器中看到图像

时间:2019-06-13 14:18:59

标签: image xamarin.forms

在使用Android模拟器运行时,我看不到图像。

我已经制定了一个测试解决方案,除了在MainPage.xaml上显示图像外,什么也没有做。 我已经使用解决方案资源管理器单击将图像导入到与xaml文件相同的文件夹中,单击:添加现有项。

xaml没什么特别的,只是显示图像:

<StackLayout>
        <!-- Place new controls here -->
        <Label Text="Welcome to Xamarin.Forms!" 
           HorizontalOptions="Center"
           VerticalOptions="CenterAndExpand" />
        <Image Source="myPicture.png"/>
</StackLayout>

没有错误信息,只是图片没有出现。 我忘了添加或配置以便在模拟器上显示图片的任何内容吗?

非常感谢。

1 个答案:

答案 0 :(得分:0)

  

我已使用以下命令将图像导入到与xaml文件相同的文件夹中   解决方案资源管理器单击:添加现有项。

您正在将图像作为embedded-images添加到xamarin.forms项目中。因此,您可以使用以下方式访问图像:

var embeddedImage = new Image { Source = ImageSource.FromResource("myPicture.jpg", typeof(EmbeddedImages).GetTypeInfo().Assembly) };

如果要使用<Image Source="myPicture.png"/>显示图像,则应将图像文件添加到从Xamarin.Forms共享代码引用的每个应用程序项目中。

  • iOS
  

自iOS 9以来,管理和支持图像的首选方法是使用   资产目录图像集,其中应包含的所有版本   支持各种设备和缩放所需的图像   应用因素。有关更多信息,请参见将图像添加到   资产目录图像集。

  • Android
  

使用Build Action将图像放置在 Resources / drawable 目录中:   Android资源。图像的高DPI和低DPI版本也可以是   已提供(在适当命名的Resources子目录中,例如   drawable-ldpi,drawable-hdpi和drawable-xhdpi)。

  • 通用Windows平台(UWP)
  

通过Build Action将图像放置在应用程序的根目录中:   内容。

然后您可以通过以下方式显示图像:

<Image Source="myPicture.jpg" />

var image = new Image { Source = "myPicture.jpg" };

文档在这里:local-images