如何在 Xamarin 中使用 CSS 设置自定义字体系列

Posted

技术标签:

【中文标题】如何在 Xamarin 中使用 CSS 设置自定义字体系列【英文标题】:How to set custom font family using CSS in Xamarin 【发布时间】:2018-09-10 09:18:59 【问题描述】:

我正在尝试在 Xamarin 表单项目中使用 CSS 文件设置自定义字体系列。 我将各自的字体放置在 androidios 项目(Android 的 Assets/Bodoni.ttf)和(IOS 的 Resources/Bodoni.tff)中

并在css文件中声明类

.titleLabel 
    font-family: Bodoni;
    color: #960051;

css 文件解释得很好,我的元素(标签)包含 styleClass 属性和上面的值。 color 属性效果很好,但字体系列没有改变。

是否有任何其他操作可以集成我的自定义字体?

【问题讨论】:

【参考方案1】:

共享项目中的所有 CSS 文件都需要将其 BuildAction 定位为 EmbeddedResource。

任何特定平台资源都需要将其 BuildAction 设置为:

iOS:捆绑资源 Android:AndroidResource

您的问题可能与第二段有关,否则第一段会抛出异常。

【讨论】:

是的,我的 CSS 文件在共享项目中,但我不知道如何使用 Microsoft Visual Studio 设置 BuildAction。 应该在属性。如果您使用的是 Mac OS,请右键单击 CSS 文件,然后单击 BuildAction。 我检查了,CSS 文件很好地定位为 EmbeddedResource,但字体系列仍然不起作用 字体文件怎么样?那些是针对正确的 BuildAction 的吗?编辑:你真的有字体文件吗? 他们没有针对它,是的,我在(app.Android/Assets/Bodoni.ttf for android)和(app.iOS/Resources/Bodoni.tff for IOS)中有字体文件。当我尝试将字体文件定位为 AndroidResource 时,出现此错误:资源目录名称无效:MyApp.Mobile.App.Android\obj\Debug\res assets "res assets"。

以上是关于如何在 Xamarin 中使用 CSS 设置自定义字体系列的主要内容,如果未能解决你的问题,请参考以下文章

是否可以在我的 Assets 文件夹中仅使用一个样式表将自定义 CSS 添加到 Xamarin 中的 WebView?

Xamarin.Forms 中 Picker 的自定义渲染器

如何从Xamarin Forms中的Azure B2C中删除缩放按钮

如何在 Xamarin Forms 中使用自定义字体(任何外部字体)作为嵌入资源?

如何在 Xamarin 中制作自定义库并导入到单独的应用程序?

Xamarin Forms Shell 如何使用自定义渲染器自定义选项卡