Шрифт SF Pro Text Medium не найден в быстром коде - PullRequest
0 голосов
/ 15 мая 2018

Я использую xCode 9.3.1 и Swift 4.1.

Я пытаюсь использовать шрифт SF Pro Text Medium в своем приложении программно.Но этот шрифт не найден в исходном коде в файле swift, и приложение вылетает.

Вот код: NSAttributedStringKey.font: UIFont (имя: ".SFProText-Medium", размер: 24.0)!

Во время выполнения выдается следующая ошибка: Неустранимая ошибка: Неожиданно найденоnil при развертывании необязательного значения

Любая другая стандартная работа со шрифтами.

Этот шрифт доступен в раскадровке, и я успешно его использовал.

Почему это не работает программно?Должен ли я добавить его в xCode (plist и т. Д.), Чтобы он работал?

Ответы [ 2 ]

0 голосов
/ 15 мая 2018

Должен ли я добавить его в xCode (plist и т. Д.), Чтобы он работал?

Определенно. Следуйте инструкциям Nader и убедитесь, что файл шрифта содержит ваш проект в качестве целевого членства, например:

enter image description here

0 голосов
/ 15 мая 2018

Выполните следующие действия и посмотрите, сработает ли это для вас:


1) Добавьте файлы шрифтов в ваш проект

2) В вашем info.plist нажмите кнопку плюсав самом верху рядом с тем, где написано Information Property List.Введите Fonts provided by application (оно должно быть завершено для вас).Добавьте ваши файлы шрифтов следующим образом:

this

3) Нажмите на свой проект в левом меню и перейдите к Build Phases и добавьте свои файлы шрифтов вгде написано Copy Bundle Sources


Если вы не уверены, как называется ваш шрифт, распечатайте все шрифты, пока не найдете название шрифта.Запустите это в viewDidLoad

UIFont.familyNames.forEach({ familyName in
    let fontNames = UIFont.fontNames(forFamilyName: familyName)
    print(familyName, fontNames)
})
...