Swift 中的导航栏没有色调颜色
No tint color for a navigationBar in Swift
我在 UINavigationController
上有一个扩展,它设置 navigationBar.tintColor
并使其透明:
self.navigationBar.tintColor = UIColor.whiteColor()
self.navigationBar.shadowImage = UIImage()
self.navigationBar.setBackgroundImage(UIImage(), forBarMetrics: .Default)
但我想要的是有一个透明的导航栏,可见的项目完全没有色调。我添加了一个具有彩色背景图像的右侧导航栏项目:
let rightButton = UIBarButtonItem(image: UIImage(named: "avatar")!,
style: UIBarButtonItemStyle.Plain,
target: self,
action: #selector(self.rightNavBarItemAction))
navigationItem.rightBarButtonItem = rightButton
我没有使用图像作为按钮的背景,而是使用了白色占位符。使用 UIColor.clearColor()
使按钮透明。
你可以试试这个:
self.navigationController?.navigationBar.barTintColor = UIColor.green
希望对你有用。谢谢
我在 UINavigationController
上有一个扩展,它设置 navigationBar.tintColor
并使其透明:
self.navigationBar.tintColor = UIColor.whiteColor()
self.navigationBar.shadowImage = UIImage()
self.navigationBar.setBackgroundImage(UIImage(), forBarMetrics: .Default)
但我想要的是有一个透明的导航栏,可见的项目完全没有色调。我添加了一个具有彩色背景图像的右侧导航栏项目:
let rightButton = UIBarButtonItem(image: UIImage(named: "avatar")!,
style: UIBarButtonItemStyle.Plain,
target: self,
action: #selector(self.rightNavBarItemAction))
navigationItem.rightBarButtonItem = rightButton
我没有使用图像作为按钮的背景,而是使用了白色占位符。使用 UIColor.clearColor()
使按钮透明。
你可以试试这个:
self.navigationController?.navigationBar.barTintColor = UIColor.green
希望对你有用。谢谢