Open ytyubox opened 5 years ago
struct Theme { static func apply(){ guard let headerFont = <#MYFONT1#>, let primaryFont = <#MYFONT2#> else { NSLog("Fail to load application font") return } let tintColor = <#MYUICOLOR#> UIApplication.shared.delegate?.window??.tintColor = tintColor let navbarLabel = UILabel.appearance(whenContainedInInstancesOf: [UINavigationBar.self]) let barbutton = UIBarButtonItem.appearance() let buttonLabel = UILabel.appearance(whenContainedInInstancesOf: [UIButton.self]) let navBar = UINavigationBar.appearance() let label = UILabel.appearance() navBar.titleTextAttributes = [.font:headerFont] navbarLabel.font = primaryFont label.font = primaryFont barbutton.setTitleTextAttributes([.font : primaryFont], for: .normal) barbutton.setTitleTextAttributes([.font : primaryFont], for: .highlighted) } }
<#SOMEWHERE#> Theme.apply()
值得注意的是如果該物件已經被render在畫面上之後,更改UIAppearence將不會影響該物件。
set Theme