Xamarin.forms 使用XAML在NavigationPage中的OnPlatform
鉴于这段原始代码,我试图在Android上隐藏图标:Xamarin.forms 使用XAML在NavigationPage中的OnPlatform,xamarin.forms,cross-platform,Xamarin.forms,Cross Platform,鉴于这段原始代码,我试图在Android上隐藏图标: <NavigationPage Title="Page" Icon="page_icon.png"> <x:Arguments> <views:MyPage /> </x:Arguments> </NavigationPage> 我尝试了许多不同的方式使用OnPlatform,但无法使其正常工作。以下是我尝试过的一些事情: <Navig
<NavigationPage Title="Page" Icon="page_icon.png">
<x:Arguments>
<views:MyPage />
</x:Arguments>
</NavigationPage>
我尝试了许多不同的方式使用OnPlatform,但无法使其正常工作。以下是我尝试过的一些事情:
<NavigationPage Title="Page">
<NavigationPage.Icon>
<OnPlatform x:TypeArguments="x:String">
<OnPlatform.iOS>page_icon.png</OnPlatform.iOS>
<OnPlatform.Android>{x:Null}</OnPlatform.Android>
</OnPlatform>
</NavigationPage.Icon>
<x:Arguments>
<views:MyPage />
</x:Arguments>
</NavigationPage>
page_icon.png
{x:Null}
这产生了以下错误:
字典中不存在给定的键
我也试过:
<NavigationPage Title="Rater">
<OnPlatform
x:Key="Icon"
x:TypeArguments="x:String"
iOS="tab_feed.png"
Android="{x:Null}"
/>
<x:Arguments>
<views:MyPage />
</x:Arguments>
</NavigationPage>
运行,但iOS上没有显示图标。不确定如何处理图标,这可能是一个单独的问题,但OnPlatform已重新设计。下面是您现在应该如何使用它:
<OnPlatform x:Key="SwitchOnColor" x:TypeArguments="Color" >
<On Platform="iOS,Android" >#0000FF</On>
<On Platform="UWP">#FF0000</On>
</OnPlatform>
#0000FF
#FF0000
不确定如何处理图标,这可能是一个单独的问题,但OnPlatform已重新设计。下面是您现在应该如何使用它:
<OnPlatform x:Key="SwitchOnColor" x:TypeArguments="Color" >
<On Platform="iOS,Android" >#0000FF</On>
<On Platform="UWP">#FF0000</On>
</OnPlatform>
#0000FF
#FF0000
(代表OP发布)
在Yuri的例子的帮助下,我能够创建在iOS和Android上工作的标记。就是这样
<NavigationPage.Icon>
<OnPlatform x:Key="SwitchOnIcon" x:TypeArguments="FileImageSource">
<On Platform="iOS">tab_feed.png</On>
</OnPlatform>
</NavigationPage.Icon>
tab_feed.png
(代表OP发布)
在Yuri的例子的帮助下,我能够创建在iOS和Android上工作的标记。就是这样
<NavigationPage.Icon>
<OnPlatform x:Key="SwitchOnIcon" x:TypeArguments="FileImageSource">
<On Platform="iOS">tab_feed.png</On>
</OnPlatform>
</NavigationPage.Icon>
tab_feed.png
谢谢。稍微调整一下你的例子,我就成功了。我将用答案修改我的问题。谢谢。稍微调整一下你的例子,我就成功了。我将使用解决方案修改我的问题。请不要在问题中编辑答案,也不要在标题中添加[已解决的]设备。相反,点击“回答你的问题”按钮并以这种方式添加答案。谢谢请不要在问题中编辑答案,也不要在标题中添加[已解决的]设备。相反,点击“回答你的问题”按钮并以这种方式添加答案。谢谢