我在 AppDelegate 中使用以下代码来设置导航栏项目的颜色。当我使用默认颜色(步骤1)时,它起作用;当我使用自定义颜色(步骤2)时,它不起作用。

有人可以建议我如何解决这个问题吗?

步骤1:可以使用

// Set navigation bar, background color
UINavigationBar.appearance().barTintColor   = UIColor.red

步骤2:不起作用
// Set navigation bar, background color
UINavigationBar.appearance().barTintColor   = UIColor(red: 41,  green: 150, blue: 204,  alpha: 1)

这是我对UIColor的扩展,以我的styles.swift文件之一实现
extension UIColor {
    convenience init(_ r: Double,_ g: Double,_ b: Double,_ a: Double) {
        self.init(red: CGFloat(r/255), green: CGFloat(g/255), blue: CGFloat(b/255), alpha: CGFloat(a))
    }
}

最佳答案

试试这个

    extension UIColor {
    static func rgb( red : CGFloat, green : CGFloat, blue : CGFloat) -> UIColor {
        return UIColor(red: red/255, green: green/255, blue: blue/255, alpha: 1)
    }
}

第2步 :
UINavigationBar.appearance().barTintColor   = UIColor.rgb(41,150,204)

关于ios - 无法为导航栏项iOS Swift设置自定义颜色,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45160573/

10-13 05:49