【问题标题】:XLabs ExtendedLabel change fonts does not work in Xamarin.Forms for UWP appXLabs ExtendedLabel 更改字体在 UWP 应用程序的 Xamarin.Forms 中不起作用
【发布时间】:2016-11-10 21:38:18
【问题描述】:

ITNOA

我有 Xamarin forms 项目,我想使用 ExtendedLabel 在 PCL 项目中使用自己的自定义字体。当我关注ExtendedLabel instruction 时,Droid 项目一切正常,但是当我想运行 UWP 项目时我看到我的字体不适用于任何标签。有趣的是,当我使用 Xamarin 内置标签并使用 font name.ttf#friendly name 模式设置 FontFamily 属性时,UWP 项目一切正常,但 ExtendedLabel 在 UWP 应用程序中没有显示正确的字体。

有人知道解决 UWP 项目问题吗?

我正在使用:

Visual Studio 2015 update 3
Xamarin forms 2.3.0.107
XLabs forms 2.2.0-pre5

谢谢

【问题讨论】:

    标签: fonts xamarin.android xamarin.forms uwp


    【解决方案1】:

    任何人都有解决 UWP 项目问题的想法

    参考this document

    对于Android和iOS平台,我们可以使用FontName属性,但是对于Windows Phone平台,它使用FriendlyFontName属性:

    引用:

    此属性仅对 Windows Phone 平台是必需的。这 可以在字体的第一行或字体预览中找到。如果 未给出则使用不包括扩展名的文件名。然而 这不能保证有效。

    但似乎 XLabs 没有正确处理 FriendlyFontName 设置。我刚试过它的official sample for UWP

    对于ExtendedLabel场景,字体设置不正确。

    经过一番调查,基于此issue,我找到了适合 Windows Phone 和 UWP 场景的解决方法。

    在 xaml 中为 WINRT 场景设置 FontName 并使用 OnePlatform

     <controls:ExtendedLabel FontName="Kristen ITC"
                                          FontSize="20"
                                          FriendlyFontName="Kristen ITC"
                                          HorizontalOptions="StartAndExpand"
                                          Text="This uses 'FontName' = 'Kristen ITC' set in XAML and 'OnPlatform' properties, size 20">
                    <controls:ExtendedLabel.FontFamily>
                      <OnPlatform x:TypeArguments="x:String"
                                  iOS=""
                                  Android=""
                                  WinPhone="Kristen ITC"/>
                    </controls:ExtendedLabel.FontFamily>              
    </controls:ExtendedLabel>
    

    请注意,您的平台操作系统中应安装特定的字体。

    截图:

    查看我的forked repository

    【讨论】:

    • 非常感谢,我希望在下一版本的 ExtendedLabel 中解决这个错误。
    猜你喜欢
    • 2021-07-21
    • 2016-10-29
    • 1970-01-01
    • 2023-03-05
    • 2017-02-05
    • 1970-01-01
    • 2017-03-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多