这类 HTML 写法,必须走 MAUI 的原生资源加载路径。添加 Font Awesome 字体文件到项目下载 Font Awesome Free(推荐 v6.5+),解压后">

MAUI怎么使用字体图标 MAUI Font Awesome用法

来源:这里教程网 时间:2026-02-21 17:34:57 作者:

MAUI 中使用 Font Awesome 字体图标,核心是把图标字体文件嵌入项目、注册字体、再用

FontImageSource
或自定义控件渲染图标。它不支持直接写
<i class="fas fa-user"></i>
这类 HTML 写法,必须走 MAUI 的原生资源加载路径。

添加 Font Awesome 字体文件到项目

下载 Font Awesome Free(推荐 v6.5+),解压后找到

webfonts\fa-solid-900.ttf
(实心图标)、
fa-regular-400.ttf
(线框图标)、
fa-brands-499.ttf
(品牌图标)。把这些 .ttf 文件拖进 MAUI 项目的
Resources\Fonts\
文件夹中,并在属性里设为:

Build ActionMauiFont Copy to Output DirectoryDo not copy(MAUI 会自动处理)

在 XAML 或 C# 中使用图标

MAUI 不支持 CSS 类名语法,但可以借助

FontImageSource
显示单个图标。例如,在按钮里显示用户图标:

<Button Text="登录">
  <Button.ImageSource>
    <FontImageSource Glyph="&#xf007;" FontFamily="fa-solid-900.ttf#Font Awesome 6 Free" Size="16" />
  </Button.ImageSource>
</Button>

注意要点:

Glyph 值是 Unicode 编码,需查 Font Awesome 官网图标页(如 fa-user 页面右上角显示的
U+f007
,转成 HTML 实体写法就是
FontFamily 格式为
"文件名#字体真实名称"
,真实名称可在字体属性里查看(Windows 上双击 .ttf 文件能看到“字体名称”,通常是
Font Awesome 6 Free
Font Awesome 6 Brands
品牌图标要用
fa-brands-499.ttf
,Glyph 值同样查官网,比如 GitHub 是

封装成可复用的图标控件(推荐)

手动写

FontImageSource
太重复,建议封装一个
IconView
自定义控件:

新建
Controls\IconView.xaml
,继承
ContentView
绑定
Icon
(string)、
Style
(solid/regular/brands)、
Size
等属性
内部用
Image
+
FontImageSource
动态生成,根据
Style
切换字体文件和字体名

这样就能统一写成:

<iconview icon="user" style="Solid" size="20"></iconview>
,大幅提升可维护性。

常见问题与避坑提示

实际开发中容易卡在这几个点:

字体文件没设对 Build Action = MauiFont → 图标不显示,控制台无报错但空白 FontFamily 名字写错(比如漏了空格或版本号)→ 显示成方块或默认字体 用了 Pro 版图标(fal/fad)但只引入了 Free 版字体 → 找不到字形,显示为空 Android 上图标模糊?加
IsOpaque="True"
Image
或设置
HeightRequest
/
WidthRequest
固定尺寸

基本上就这些。MAUI 用 Font Awesome 不复杂但容易忽略字体注册细节,按步骤来基本一次跑通。

相关推荐