我定義在代碼中的顏色色彩的故事板不匹配的UIColor
[UIColor colorWithHue:32.0/360.0 saturation:0.88 brightness:0.97 alpha:1]
如果我嘗試設置在故事板相同的顏色,在運行應用程序時,它是一個稍微不同的顏色來定義的一個碼。如果將顏色拖動到上齶,然後選擇不同的顏色並再次選擇上齶,則HSB值會稍有不同。它似乎是在界面構建器中捕捉到不同的(RGB?)顏色。
我定義在代碼中的顏色色彩的故事板不匹配的UIColor
[UIColor colorWithHue:32.0/360.0 saturation:0.88 brightness:0.97 alpha:1]
如果我嘗試設置在故事板相同的顏色,在運行應用程序時,它是一個稍微不同的顏色來定義的一個碼。如果將顏色拖動到上齶,然後選擇不同的顏色並再次選擇上齶,則HSB值會稍有不同。它似乎是在界面構建器中捕捉到不同的(RGB?)顏色。
的Xcode 8+的iOS 10+
我最近所面臨的發佈回答這個問題,並沒有做到了。事實證明,隨着iOS 10 SDK的發佈,UIColor
初始化程序init(red:green:blue:alpha:)
現在使用擴展的sRGB範圍,因此在配置Storyboard上的顏色值時必須相應地進行設置。
看到蘋果的文檔:https://developer.apple.com/reference/uikit/uicolor/1621925-init
似乎這是一個錯誤。當登錄的顏色和IB在代碼中設置,它的值有H:27.982594 S:0.899257 B:0.953253
我已經提交了一份bug報告給蘋果:rdar:// 19744216
由於Zaph
要登錄:
CGFloat cols[4];
[color getHue:&cols[0] saturation:&cols[1] brightness:&cols[2] alpha:&cols[3]];
NSLog(@"H:%f S:%f B:%f %f",cols[0]*360, cols[1], cols[2], cols[3]);
我有同樣的問題。我看到故事板顏色的運行時RGB值與代碼中運行時創建的UIColors不匹配。我可以通過在配置時將顏色設置爲「Generic RGB」(相對於sRGB的默認值)來修復故事板中的問題。以下是我在IB談論的截圖:
使用'colorWithHue'而不是RGB網頁十六進制值:很好的選擇。 – zaph 2015-02-06 14:24:14
在您的代碼中,嘗試記錄由IB設置的HSB值。如果他們是不同的文件錯誤:bugreporter.apple.com。我想我也看到了這個問題。 – zaph 2015-02-06 14:26:58
當選擇UIView的bg顏色併爲UITableView設置相同的bg顏色但顏色不同時,我也會遇到同樣的情況。爲了實現這一點,我已經對顏色的阿爾法 – 2015-02-06 14:31:56