Оказалось, что не так и просто добраться до нового стиля шрифта семейства SF, который анонсировали на WWDC 2019.
После некоторого времени, потраченного безуспешно на поиски примеров на сайте с документацией, а так же на различных сайтах с туториалами и, конечно же, на StackOverflow я решил самостоятельно разобраться, как создавать экземпляр UIFont с помощью UIFontDescriptor с нужным мне face:
1 2 3 4 5 |
let design = UIFontDescriptor.SystemDesign.rounded let descriptor = UIFontDescriptor.preferredFontDescriptor(withTextStyle: .largeTitle) .withDesign(design)! let font = UIFont.init(descriptor: descriptor, size: 48) UINavigationBar.appearance().largeTitleTextAttributes = [.font : font] |
Сам же дизайн создать и применить очень просто, если вам лишь нужно изменить шрифт у обычного элемента Text:
1 |
Text(title).font(.system(.headline, design: .rounded)) |
К сожалению, изменить такими модификаторами стиль заголовка навбара в SwiftUI нельзя, поэтому приходится использовать UIAppearance протокол. Приведённый в начале код необходимо разместить где-то либо в коде SceneDelegate, либо в init() методе вашего компонента SwiftUI.