Я хотел бы изменить несколько значков, расположенных в ToolbarItem элемента TabbedPage, я просмотрел документы здесь , и я либо упускаю суть, либо, возможно, то, чего я хочу достичь, не выполнимо?
В настоящее время я использую FontAwesomeIcons для заполнения значков в моем приложении, и со статической точки зрения они отлично работают. Но в некоторых сценариях я могу захотеть изменить либо значок, либо его цвет, либо пакет значков (например, Светло-твердое).
App.xaml - я использую это для ссылки на мой.otf файлы
<Application.Resources>
<OnPlatform x:Key="FontAwesomeProLight" x:TypeArguments="x:String">
<On Platform="iOS" Value="FontAwesome5Pro-Light" />
</OnPlatform>
<OnPlatform x:Key="FontAwesomeProSolid" x:TypeArguments="x:String">
<On Platform="iOS" Value="FontAwesome5Pro-Solid" />
</OnPlatform>
</Application.Resources>
ExamplePage.xaml - это страница, на которой я покажу свои значки в настоящее время (не динамически)
<TabbedPage.ToolbarItems>
<ToolbarItem Clicked="OnFilterOrders">
<ToolbarItem.IconImageSource>
<FontImageSource FontFamily="{StaticResource FontAwesomeProLight}" Glyph="{x:Static fonts:FontAwesomeIcons.Filter}" />
</ToolbarItem.IconImageSource>
</ToolbarItem>
</TabbedPage.ToolbarItems>
Итак, кодна данный момент отлично работает, чтобы показать статический значок, ниже моя попытка, которая терпит неудачу - но не выдает ошибку, я просто получаю? вместо этого
ExamplePage.xaml
<TabbedPage.ToolbarItems>
<ToolbarItem Clicked="OnFilterOrders">
<ToolbarItem.IconImageSource>
<FontImageSource FontFamily="{DynamicResource FontAwesomeIconPack}" Glyph="{x:Static fonts:FontAwesomeIcons.Filter}" />
</ToolbarItem.IconImageSource>
</ToolbarItem>
</TabbedPage.ToolbarItems>
Используя код этой страницы, у меня также есть следующее в конструкторе.
Resources["FontAwesomeIconPack"] = App.Current.Resources["FontAwesomeProLight"];
Правильно ли я считаю, что ресурсы ["FontAwesomeIconPack"] связаны со словарем ресурсов страниц, а App.Current.Resources ["FontAwesomeProLight"] связан со страницей app.xaml?
Я былнадеясь, что в этом примере я покажу свой существующий значок, но это не так. Мои ожидания - тот же значок, что и раньше (до того, как я меняю пакет), но вместо этого я просто получаю?).