Xamarin表单iOS-显示资产目录中的图像

Xamarin表单iOS-显示资产目录中的图像,xamarin,xamarin.forms,xamarin.ios,xcasset,Xamarin,Xamarin.forms,Xamarin.ios,Xcasset,我知道关于这个话题有几个问题,但是,到目前为止,它们并没有帮助我解决这个问题。我想以xamarin格式显示图像。在安卓系统上,它可以工作,在iOS上,图像不会显示。我使用资产目录在iOS中定义图像。请参阅下文: Xaml: 编辑1 在Xaml中,我错误地将source设置为source=“happinessfacture”,这是错误的。然而,即使使用Source=“happinessfacture.png”,它也无法在iOS上运行。(但在android上) 编辑2 这有点尴尬,但我解决了这个问题

我知道关于这个话题有几个问题,但是,到目前为止,它们并没有帮助我解决这个问题。我想以xamarin格式显示图像。在安卓系统上,它可以工作,在iOS上,图像不会显示。我使用资产目录在iOS中定义图像。请参阅下文:

Xaml:

编辑1 在Xaml中,我错误地将source设置为source=“happinessfacture”,这是错误的。然而,即使使用Source=“happinessfacture.png”,它也无法在iOS上运行。(但在android上)

编辑2
这有点尴尬,但我解决了这个问题。错误在于使用
happinessfactory
而不是
happinessfactory
引用xaml中的图像,后者是正确的名称,也是图像文件的名称

首先,我有点搞不清楚您是使用Xamarin.Forms还是Xamarin.iOS。但是,将Xamarin.forms与PCL一起使用时,一个可能的解决方案是只需将要显示的图像添加到便携项目中的资产文件夹中。然后使用ImageSource.FromResource()在代码隐藏中设置图像源,如下所示:


另一个可能有用的来源是这本书

谢谢你的回答,我解决了这个问题!看看我的文章的编辑。
<Image Opacity="0.4" Source="happinessfactury.png" Aspect="AspectFill" />
<ImageAsset Include="Assets.xcassets\happinessfactury.imageset\Contents.json" />
<ImageAsset Include="Assets.xcassets\happinessfactury.imageset\happinessfactory@1x.png" />
<ImageAsset Include="Assets.xcassets\happinessfactury.imageset\happinessfactory@2x.png" />
<ImageAsset Include="Assets.xcassets\happinessfactury.imageset\happinessfactory@3x.png" />
{"images": [
{
  "idiom": "universal"
},
{
  "filename": "happinessfactory@1x.png",
  "scale": "1x",
  "idiom": "universal"
},
{
  "filename": "happinessfactory@2x.png",
  "scale": "2x",
  "idiom": "universal"
},
{
  "filename": "happinessfactory@3x.png",
  "scale": "3x",
  "idiom": "universal"
},
{
  "idiom": "iphone"
},
{
  "scale": "1x",
  "idiom": "iphone"
},
{
  "scale": "2x",
  "idiom": "iphone"
},
{
  "subtype": "retina4",
  "scale": "2x",
  "idiom": "iphone"
},
{
  "scale": "3x",
  "idiom": "iphone"
},
{
  "idiom": "ipad"
},
{
  "scale": "1x",
  "idiom": "ipad"
},
{
  "scale": "2x",
  "idiom": "ipad"
},
{
  "idiom": "watch"
},
{
  "scale": "2x",
  "idiom": "watch"
},
{
  "screenWidth": "{130,145}",
  "scale": "2x",
  "idiom": "watch"
},
{
  "screenWidth": "{146,165}",
  "scale": "2x",
  "idiom": "watch"
},
{
  "idiom": "mac"
},
{
  "scale": "1x",
  "idiom": "mac"
},
{
  "scale": "2x",
  "idiom": "mac"
}],"info": {
"version": 1,
"author": "xcode"},"properties": {
"on-demand-resource-tags": [
  "happinessfactury"
]}}
MyImg.Source = ImageSource.FromResource("ProjectName.Assets.happinessfactury.png");