适用于没有特定 TargetType 的应用程序的多个自定义字体

杰佩·克里斯滕森

我正在尝试将两种自定义字体导入我的应用程序。现在,我已经分别在.Droid/Assets.iOS/Resources目录中添加了字体,并且对于 iOS 将它加载到我的 Info.plist 中。

在我的 App.xaml 中,我执行以下操作以在我的 PCL 中加载字体:

<Application.Resources>
    <ResourceDictionary>
        <Style x:Name="BoldFont" TargetType="Label">
            <Setter Property="Label.FontFamily">
                <Setter.Value>
                    <OnPlatform x:TypeArguments="x:String">
                        <OnPlatform.Android>PT_Sans-Narrow-Web-Regular.ttf#PT Sans Narrow</OnPlatform.Android>
                        <OnPlatform.iOS>PT Sans Narrow</OnPlatform.iOS>
                    </OnPlatform>
                </Setter.Value>
            </Setter>
        </Style>
    </ResourceDictionary>
</Application.Resources>

但是,我希望能够在我的标签中使用多种字体,这就是为什么我将以下代码添加到我的<ResourceDictionary>

<Style x:Name="RegularFont" TargetType="Label">
    <Setter Property="Label.FontFamily">
        <Setter.Value>
            <OnPlatform x:TypeArguments="x:String">
                <OnPlatform.Android>RobotoCondensed-Regular.ttf#Roboto Condensed</OnPlatform.Android>
                <OnPlatform.iOS>Roboto Condensed</OnPlatform.iOS>
            </OnPlatform>
        </Setter.Value>
    </Setter>
</Style>

不幸的是,我收到错误:

ResourceDictionary 中已存在键为“Xamarin.Forms.Label”的资源

此外,我是否真的必须使我的 TargetType 特定于标签,如果说,我想全局使用字体,无论它是 aLabel还是 an Entry

大卫

首先,对于样式,使用 x:Key 而不是 x:Name。这将避免您看到的错误消息。

<Style x:Key="RegularFont" TargetType="Label">
    <Setter Property="Label.FontFamily">
        <Setter.Value>
            <OnPlatform x:TypeArguments="x:String">
                <OnPlatform.Android>RobotoCondensed-Regular.ttf#Roboto Condensed</OnPlatform.Android>
                <OnPlatform.iOS>Roboto Condensed</OnPlatform.iOS>
            </OnPlatform>
        </Setter.Value>
    </Setter>
</Style>

有时您可以在类型之间共享样式定义。最好的方法是使用 TargetType,它是定义要设置的属性的公共基类。不幸的是,Label 和 Entry 之间没有这种通用的基类。它们各自独立地定义了 FontFamily。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

对应用程序中的所有文本使用自定义字体,不适用于Lollipop

来自分类Dev

对应用程序中的所有文本使用自定义字体,不适用于Lollipop

来自分类Dev

从应用程序特定的文件夹加载自定义字体文件

来自分类Dev

使用的特定自定义字体在android应用程序中不起作用

来自分类Dev

如何为所有文本声明应用程序范围的自定义字体

来自分类Dev

为什么我的自定义字体没有被应用到我的所有应用程序中?

来自分类Dev

具有colorAcent的主题(材质支持应用程序兼容)不适用于自定义小部件

来自分类Dev

Alt + F2(运行应用程序)不适用于自定义命令

来自分类Dev

SQL Reporting Services自定义安全扩展方法,可用于多个应用程序

来自分类Dev

用于Aurelia应用程序的自定义动态CSS

来自分类Dev

最小的WebRTC,适用于没有音频和视频的本机应用程序

来自分类Dev

具有不同自定义的AngularJS应用程序

来自分类Dev

没有适用于“ anti_join”的适用方法应用于“ factor”类的对象

来自分类Dev

没有适用于“ separate_”的适用方法应用于“字符”类的对象

来自分类Dev

我想创建自定义操作栏,例如复制,粘贴,这将适用于所有在android中选择单词的应用程序

来自分类Dev

自定义字体不适用于大小类

来自分类Dev

仅适用于特定NFC标签的应用程序

来自分类Dev

仅适用于特定NFC标签的应用程序

来自分类Dev

SSH -X不适用于特定应用程序

来自分类Dev

适用于整个应用程序的Roboto字体

来自分类Dev

在没有接收器应用程序的情况下发布适用于Chromecast的应用程序

来自分类Dev

是否有普通的KDE版本,而没有适用于Ubuntu的所有KDE应用程序?

来自分类Dev

是否有适用于Ubuntu的书店应用程序?

来自分类Dev

使用“TermDocumentMatrix”时,没有适用于“meta”的方法应用于“character”类的对象

来自分类Dev

适用于Android应用的自定义键盘

来自分类Dev

有没有办法让我的Google字体代码适用于HTML代码?

来自分类Dev

有没有办法从代码写入自定义应用程序配置配置

来自分类Dev

当我没有适用于Web应用程序的原始项目时,如何解决错误?

来自分类Dev

具有多个Firebase的Flutter应用程序(适用于多种环境)

Related 相关文章

  1. 1

    对应用程序中的所有文本使用自定义字体,不适用于Lollipop

  2. 2

    对应用程序中的所有文本使用自定义字体,不适用于Lollipop

  3. 3

    从应用程序特定的文件夹加载自定义字体文件

  4. 4

    使用的特定自定义字体在android应用程序中不起作用

  5. 5

    如何为所有文本声明应用程序范围的自定义字体

  6. 6

    为什么我的自定义字体没有被应用到我的所有应用程序中?

  7. 7

    具有colorAcent的主题(材质支持应用程序兼容)不适用于自定义小部件

  8. 8

    Alt + F2(运行应用程序)不适用于自定义命令

  9. 9

    SQL Reporting Services自定义安全扩展方法,可用于多个应用程序

  10. 10

    用于Aurelia应用程序的自定义动态CSS

  11. 11

    最小的WebRTC,适用于没有音频和视频的本机应用程序

  12. 12

    具有不同自定义的AngularJS应用程序

  13. 13

    没有适用于“ anti_join”的适用方法应用于“ factor”类的对象

  14. 14

    没有适用于“ separate_”的适用方法应用于“字符”类的对象

  15. 15

    我想创建自定义操作栏,例如复制,粘贴,这将适用于所有在android中选择单词的应用程序

  16. 16

    自定义字体不适用于大小类

  17. 17

    仅适用于特定NFC标签的应用程序

  18. 18

    仅适用于特定NFC标签的应用程序

  19. 19

    SSH -X不适用于特定应用程序

  20. 20

    适用于整个应用程序的Roboto字体

  21. 21

    在没有接收器应用程序的情况下发布适用于Chromecast的应用程序

  22. 22

    是否有普通的KDE版本,而没有适用于Ubuntu的所有KDE应用程序?

  23. 23

    是否有适用于Ubuntu的书店应用程序?

  24. 24

    使用“TermDocumentMatrix”时,没有适用于“meta”的方法应用于“character”类的对象

  25. 25

    适用于Android应用的自定义键盘

  26. 26

    有没有办法让我的Google字体代码适用于HTML代码?

  27. 27

    有没有办法从代码写入自定义应用程序配置配置

  28. 28

    当我没有适用于Web应用程序的原始项目时,如何解决错误?

  29. 29

    具有多个Firebase的Flutter应用程序(适用于多种环境)

热门标签

归档