在Xamarin表单TabBar中使用图标字体

时间:2019-06-26 12:31:56

标签: xaml xamarin xamarin.forms

我刚开始使用Xamarin Forms,所以请原谅什么是菜鸟问题...

我从Visual Studio中的新Shell Shells App开始,所以为我生成了一些代码。

有一个AppShell页面,其中包含TabBar控件。在其中可以使用Tab控件设置ShellContent页面。

每个选项卡都有一个Icon属性,但这显然只接受PNG图标。

如何在Xaml中为我的Tab图标使用图标字体(已经在正确显示图标,因为我在另一页的内容中使用了该图标字体)?

我正在使用Xamarin.Forms 4.0.0.497661

4 个答案:

答案 0 :(得分:1)

您可以使用自定义渲染器来解决此问题。在GitHub上查看以下示例:https://github.com/winstongubantes/Xamarin.Forms/tree/master/CustomIconizeFont

答案 1 :(得分:1)

您必须使用FontImageSource来做到这一点。

<Tab Title="MyTitle"> <Tab.Icon> <FontImageSource FontFamily="{StaticResource IconFont}" Glyph="&#xF00A;" Size="Small"/> </Tab.Icon> ... </Tab>

答案 2 :(得分:1)

以下解决方案对我有用。

从fontswesome复制了Assets文件夹中的文件

  • fa-brands-400.ttf
  • fa-regular-400.ttf
  • fa-solid-900.ttf

根据所需图标,重要引用“ Font Awesome 5 Brands”

<Tab.Icon>
    <FontImageSource FontFamily="fa-brands-400.ttf#Font Awesome 5 Brands" Glyph="&#xf39e;"/>
</Tab.Icon>

答案 3 :(得分:0)

这是一个很好的问题。除非将其转换为PNG,否则不能直接使用tab icon属性来接受图标字体。 如果要走那条路,可以尝试this,可能需要处理保存图像的权限。值得一试!