You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何覆盖Uno.Material样式的默认字体族?

解决方案

你无需重写任何ControlTemplate,Uno.Themes的Material样式所有字体均通过全局资源键绑定,只要在资源字典中重写对应键的取值即可生效,操作如下:

  • 确保自定义字体资源的声明顺序,在App.xaml中晚于Uno.Themes的Material主题资源导入,后声明的资源会自动覆盖同名的已有资源
  • 按需求重写对应字体资源键,参考代码示例:
<Application.Resources>
    <ResourceDictionary>
        <ResourceDictionary.MergedDictionaries>
            <!-- 原有Uno.Material主题资源导入,保持原有配置不变 -->
            <MaterialTheme xmlns="using:Uno.Material" />
            <!-- 新增自定义资源字典,覆盖默认字体配置 -->
            <ResourceDictionary>
                <!-- 全局默认字体,修改该值即可覆盖绝大多数场景的字体 -->
                <FontFamily x:Key="MaterialFontFamily">你的目标字体,示例值:/Assets/Fonts/MyCustomFont.ttf#My Custom Font</FontFamily>
                <!-- 如需单独调整不同字重的字体,可额外重写以下对应资源键 -->
                <FontFamily x:Key="MaterialLightFontFamily">自定义轻量字体</FontFamily>
                <FontFamily x:Key="MaterialMediumFontFamily">自定义中等字重字体</FontFamily>
                <FontFamily x:Key="MaterialBoldFontFamily">自定义粗体字体</FontFamily>
            </ResourceDictionary>
        </ResourceDictionary.MergedDictionaries>
    </ResourceDictionary>
</Application.Resources>
  • 跨平台项目需提前将字体文件放到对应平台的资源目录,按Uno平台规范配置字体引用路径即可正常生效。

内容的提问来源于stack exchange,提问作者Batesias

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 02:27:02