我的应用程序中有一个导航栏,我需要自定义颜色
所以我在app中委托这段代码来自定义导航外观:
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
UINavigationBar.appearance().isTranslucent = false
UINavigationBar.appearance().barTintColor = getColorFromHex("438CC5")
UINavigationBar.appearance().tintColor = UIColor.white
}
我通过颜色选择器拾取颜色并将十六进制放入我的代码但没有获得相同的颜色
任何帮助我如何设置导航栏的特定颜色?
答案 0 :(得分:0)
我认为在你的情况下
UINavigationBar.appearance().isTranslucent = false
应该解决问题。 isTranslucent
设置为true
请注意设置appearance
会更改整个应用中的导航栏。考虑从UIViewController显式更改导航栏的颜色,如:
class Style {
class func coloredNavigationBar(navigationBar: UINavigationBar?, color: UIColor) {
navigationBar?.tintColor = UIColor.white
navigationBar?.barTintColor = color
navigationBar?.isTranslucent = false
}
}
用法:
class FooController : UIViewController {
override func loadView() {
super.loadView()
Style.coloredNavigationBar(navigationBar: navigationController?.navigationBar, color : .red)
}
}