Пользовательские шрифты в устаревшем Paywall Builder
Пользовательские шрифты доступны только в AdaptyUI SDK v.2.1.0 и выше
Один из признаков хорошего дизайна — единообразие визуального стиля. Поэтому при создании no-code пейволов вы, скорее всего, захотите использовать пользовательский шрифт, который сочетается с остальным приложением. Здесь мы расскажем, как работает настройка шрифтов и как их использовать.
Этот раздел описывает устаревший Paywall Builder, совместимый с Adapty SDK v2.x и более ранними версиями. Информацию о новом Paywall Builder, совместимом с Adapty SDK v3.x и выше, см. в разделе Пользовательские шрифты в новом Paywall Builder.
Что можно настроить
Каждый текстовый элемент в Paywall Builder может иметь собственный шрифт и стиль. Настройте это в параметрах шрифта для каждого текстового элемента:
Но в некоторых случаях удобнее изменить шрифт сразу для всего пейвола. Это можно сделать в разделе Layout в Paywall Builder путём настройки Paywall Font.
Шрифты, доступные по умолчанию
При создании пейвола в Builder Adapty по умолчанию использует системный шрифт — как правило, SF Pro на iOS и Roboto на Android (хотя это может варьироваться в зависимости от устройства). Также можно выбрать один из распространённых шрифтов (Arial, Times New Roman, Courier New, Georgia, Palatino и Verdana). Для каждого из них доступно несколько начертаний:
Обратите внимание: эти шрифты не поставляются в составе Adapty SDK и используются только для предпросмотра. Мы не можем гарантировать их корректную работу на всех устройствах.
Тем не менее в ходе тестирования мы наблюдали, что большинство устройств распознают эти шрифты без дополнительных усилий с вашей стороны. Список шрифтов, доступных по умолчанию на iOS, можно найти здесь: В официальной документации Apple
Как добавить пользовательский шрифт в дашборд Adapty
Если стандартных шрифтов недостаточно, нужно добавить пользовательский. Нажмите «Add custom font» в любом выпадающем списке шрифтов — откроется следующий экран:
Вам нужно:
- Найти файл шрифта и загрузить его в эту форму
- Указать имя для ссылки на шрифт в Paywall Builder
- Указать корректные названия шрифта для обеих платформ
- Добавить файл шрифта в бандл приложения, если вы ещё этого не сделали
Мы не будем отправлять загруженный файл шрифта на устройство — он нужен только для предпросмотра. SDK получает лишь строки с названием шрифта и использует их при отрисовке пейвола. Поэтому убедитесь, что файл шрифта включён в бандл и указаны правильные платформо-зависимые имена шрифта — иначе ничего не сработает. Не волнуйтесь, это займёт совсем немного времени.
Загружая файл шрифта в Adapty, вы подтверждаете, что имеете право использовать его в своём приложении
Получение корректного имени шрифта на iOS
Есть два способа получить правильный идентификатор шрифта: первый требует написания небольшого кода, второй использует приложение Font Book, доступное на macOS.
Если вы уже добавили пользовательский шрифт в бандл приложения — скорее всего, вы уже ссылаетесь на него по имени. Чтобы убедиться в правильности имени, вызовите UIFont.familyNames() для получения семейства шрифта, а затем передайте результат в UIFont.fontNames(forFamilyName: familyName). Сделать это можно в viewDidLoad, после чего удалите этот фрагмент кода:
override func viewDidLoad() {
super.viewDidLoad()
...
for family in UIFont.familyNames.sorted() {
print("Family: \(family)")
let names = UIFont.fontNames(forFamilyName: family)
for fontName in names {
print("- \(fontName)")
}
}
}
fontName в этом фрагменте — именно то, что нам нужно. Оно может выглядеть примерно как «MyFont-Regular».
Второй способ значительно проще: установите шрифт на Mac, откройте приложение Font Book, найдите нужный шрифт и используйте его PostScript name:
Получение корректного имени шрифта на Android
Если файл шрифта правильно добавлен в папку ресурсов, достаточно указать имя файла. Убедитесь, что оно написано строчными буквами и содержит только буквы, цифры и символы подчёркивания — иначе это может не сработать.
Проверить правильность имени файла можно, вызвав ResourcesCompat.getFont(context, R.font.my_font), где my_font — это имя вашего файла. В данном случае именно my_font нужно указать при создании пользовательского шрифта в Adapty.
Добавление файлов шрифтов в бандл приложения
Скорее всего, вы уже используете пользовательский шрифт в других частях приложения. Но если нет — убедитесь, что файл шрифта включён в проект и бандл приложения. Подробнее об этом читайте ниже.
На iOS: В официальной документации Apple
На Android: В официальной документации Android