Как установить пользовательское семейство шрифтов с помощью css в xamarin

Я пытаюсь установить пользовательское семейство шрифтов с помощью файла CSS в проекте форм Xamarin. Я поместил соответствующий шрифт в проект android и ios (Assets / Bodoni.ttf для android) и (Resources / Bodoni.tff для IOS)

и объявил класс в файле css

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

Файл css хорошо интерпретируется, и мой элемент (Label) содержит атрибут styleClass со значением сверху. Свойство цвета работает хорошо, но семейство шрифтов не меняется.

Есть ли какие-то другие манипуляции для интеграции моего пользовательского шрифта?

0
0
279
1

Ответы 1

Все файлы CSS в общем проекте должны нацеливать его BuildAction как EmbeddedResource.

Также для любого конкретного ресурса платформы BuildAction должен быть установлен как:

  • iOS: BundleResource
  • Android: AndroidResource

Ваша проблема может быть больше связана со вторым абзацем, поскольку в противном случае первый вызовет исключение.

Да, мой файл CSS находится в общем проекте, но я не могу найти, как установить BuildAction с помощью Microsoft Visual Studio.

FakeLion 11.09.2018 09:24

Должен быть в свойствах. Если вы работаете в Mac OS, щелкните правой кнопкой мыши файл CSS, а затем - BuildAction.

Daniel Uribe 11.09.2018 18:53

Я проверил, и файл CSS хорошо нацелен как EmbeddedResource, но семейство шрифтов по-прежнему не работает

FakeLion 12.09.2018 09:28

Как насчет файлов шрифтов? Направлены ли они на правильную BuildAction? Обновлено: У вас действительно есть файл шрифтов?

Daniel Uribe 12.09.2018 15:27

Они не нацелены на это, да, у меня есть файл шрифтов в (app.Android/Assets/Bodoni.ttf для Android) и (app.iOS / Resources / Bodoni.tff для IOS). Когда я пытаюсь настроить таргетинг на файлы шрифтов как AndroidResource, появляется следующая ошибка: недопустимое имя каталога ресурсов: MyApp.Mobile.App.Android \ obj \ Debug \ res assets "res assets".

FakeLion 13.09.2018 09:32

В настоящее время мои файлы шрифтов нацелены на AndroidAsset в проекте Android.

FakeLion 13.09.2018 10:04

Другие вопросы по теме