Пользовательский шрифт в раскадровке из Pod не отображается в работающем приложении - PullRequest
0 голосов
/ 23 мая 2019

Я создал инфраструктуру CococoaPod для общего пользовательского интерфейса, который будет использоваться в нескольких проектах. Я назначил Source Sans Pro UILabels в раскадровке, и файлы шрифтов добавлены в инфраструктуру CocoaPod внутри папки ресурсов.

Когда в симуляторе запускается любое приложение, использующее этот каркас, вместо шрифта Source Sans Pro на ярлыках отображается шрифт Helvetica.

Если я в явном виде применяю свойство шрифта в viewDidLoad к UILabel, для которого в раскадровке был установлен Source Sans Pro, но Helvetica показывал, отображается шрифт Source Sans Pro.

Я хочу знать, почему соответствующие шрифты не отображаются в файле UIStoryboard, поступающем из фреймворка Pod.

1 Ответ

0 голосов
/ 26 мая 2019

Вы можете установить font свойство UILabel в раскадровке , а также в код .Это зависит от того, как вы установите свой шрифт.Если вы пытаетесь установить другой шрифт в коде, чем тот, который вы уже установили в раскадровке, он возьмет шрифт, который вы установили в коде.

Предположим, вы установили Sans Pro на Label в storyboard и пытаетесь установить другой шрифт Helvetica в viewDidLoad, значит, он займет только Helvetica.

Будет хорошо, если вы будете последовательно следовать каким-либо образом, либо в Storyboard, либо в Code.И вы можете установить атрибуты UILabel в его didSet наблюдателя свойства

@IBOutlet weak var myLabel: UILabel! {
    didSet {
        myLabel.font = UIFont.systemFont(ofSize: 20) // you can set your custom font as well
        myLabel.textColor = UIColor.white
    }
}
...