我的 setBackgroundColor 总是与 photoshop 不同

My setBackgroundColor is Always Different from photoshop

我的设计师让我用 Photoshop 的 RGB 125、178、60 显示 UIView。所以我按照下面的代码设置颜色:

+ (UIColor *) okThronColor {

    return [UIColor colorWithRed:(CGFloat)(125.0/255.0)
                           green:(CGFloat)(178.0/255.0)
                            blue:(CGFloat)(60.0/255.0) 
                           alpha:1];

}

Photoshop 告诉我颜色是:

但是 iphone 上的颜色是:

每次都会出现所有颜色的问题。为什么?

我相信这归结为颜色配置文件。如果您使用的是 Photoshop,如果我没记错的话,这默认为最适合照片的颜色配置文件。大多数动态范围等。而系统将使用尽可能低的颜色配置文件,因为它占用的内存较少。

这篇文章 here 提出了一些绕过它的方法,以获得 iOS 的正确 RGB 值,并更深入地了解了为什么会发生这种情况。

在 iOS7(及更高版本)中,导航栏是半透明的,颜色受其背后的影响。

尝试将 translucent 属性 设置为 NO

查看 UINavigationBar documentation