Xamarin.Forms:使用资产目录中的图像

时间:2016-09-08 13:32:34

标签: image xaml xamarin.ios xamarin.forms asset-catalog

我有Master Detail page,我想在导航栏中设置图标以显示菜单。因此,我将我的图像放入资产目录(资产目录>媒体>菜单)。如果我想从XAML引用该图像,则当图像位于资产目录中时,它不会显示。

我尝试了不同的路径,但它们都不起作用。 Debugging也没有显示任何图片。似乎Xamarin.Forms不支持资产目录,但事实并非如此。在正常的内容页面上,我有这个:

<ContentPage.ToolbarItems>
 <ToolbarItem Text="Configuration" Activated="OpenConfiguration" Order="Primary" Priority="0">
  <ToolbarItem.Icon>
    <OnPlatform x:TypeArguments="FileImageSource">
      <OnPlatform.iOS>gear.png</OnPlatform.iOS>
      <OnPlatform.Android>gear.xml</OnPlatform.Android>
      <OnPlatform.WinPhone>Assets/gear.png</OnPlatform.WinPhone>
    </OnPlatform>
  </ToolbarItem.Icon>
 </ToolbarItem>
</ContentPage.ToolbarItems>

这没有问题。在我的MasterPage(页面,它负责显示主详细信息模板中的菜单条目)我有这个:

<ContentPage.Icon>
 <OnPlatform x:TypeArguments="FileImageSource">
  <OnPlatform.iOS>menu.png</OnPlatform.iOS>
  <OnPlatform.Android>menu.xml</OnPlatform.Android>
  <OnPlatform.WinPhone>Assets/menu.png</OnPlatform.WinPhone>
 </OnPlatform>
</ContentPage.Icon>

基本上,它是相同的代码,但图标不会显示。如果我将图像放入Resources文件夹...

,我只显示图标

但是如何在XAML中使用资产目录中的图像?

1 个答案:

答案 0 :(得分:2)

我从Xamarin得到的唯一回应是,FileImageSource不能与资产目录一起使用。这并不完全正确,但因为每次不使用它都不起作用。