изменить шрифт заголовка панели навигации-swift
У меня есть титул в моей навигации и я хочу изменить его шрифт. Я нашел эту строку кода, но это когда контроллер навигации.
self.navigationController?.navigationBar.titleTextAttributes = [ NSFontAttributeName: UIFont(name: "LeagueGothic-Regular", size: 16.0)!,
NSForegroundColorAttributeName: UIColor.whiteColor()]
но у меня нет контроллера навигации. Я добавил панель навигации вручную в свой вид.
Как изменить шрифт комментария?
5 ответов
попробуйте это:
С
[[UINavigationBar appearance] setTitleTextAttributes:attrsDictionary];
Swift 3
self.navigationController.navigationBar.titleTextAttributes = [NSFontAttributeName: UIFont(name: "CaviarDreams", size: 20)!]
Swift 4
self.navigationController.navigationBar.titleTextAttributes = [NSAttributedStringKey.font: UIFont(name: "CaviarDreams", size: 20)!]
правильный способ установки шрифта для каждого контроллера вида в Swift (с помощью внешнего прокси-сервера):
Swift 4
let attributes = [NSAttributedStringKey.font: UIFont(name: "HelveticaNeue-Light", size: 17)!]
UINavigationBar.appearance().titleTextAttributes = attributes
Swift 3
let attributes = [NSFontAttributeName: UIFont(name: "HelveticaNeue-Light", size: 17)!]
UINavigationBar.appearance().titleTextAttributes = attributes
SWIFT 4.x
чтобы изменить шрифт заголовка панели навигации для обычного & большой заголовок над iOS 11.x
let navigation = UINavigationBar.appearance()
let navigationFont = UIFont(name: "Custom_Font_Name", size: 20)
let navigationLargeFont = UIFont(name: "Custom_Font_Name", size: 34) //34 is Large Title size by default
navigation.titleTextAttributes = [NSAttributedStringKey.foregroundColor: UIColor.white, NSAttributedStringKey.font: navigationFont!]
if #available(iOS 11, *){
navigation.largeTitleTextAttributes = [NSAttributedStringKey.foregroundColor: UIColor.white, NSAttributedStringKey.font: navigationLargeFont!]
}
в навигационной панели должен быть установлен большой заголовок true.
self.navigationController?.navigationBar.titleTextAttributes = [NSAttributedStringKey.font: UIFont(name: "Lato-Semibold", size: 17)!,NSAttributedStringKey.foregroundColor : UIColor.white]
для вызова titleTextAttributes по ссылке на панель навигации используйте:
let attributes = [NSAttributedStringKey.font: UIFont(name: "Helvetica", size: 17)!]
self.navigationController?.navigationBar.titleTextAttributes = attributes