Interface Builder的颜色选择器中的颜色错误

时间:2012-10-02 07:31:33

标签: xcode interface-builder uicolor color-picker

我有一个带有棕色图像的UIImageView,它不会总是到达顶部。 UIImage视图位于白色UIView内。

所以,因为图像的顶部是一个线性的棕色,我说我会在它下面的UIView使用相同的棕色,并且用户将看不到图像的结束位置。到目前为止,非常好。

我的问题是,当我选择图像顶部的颜色时,颜色选择器会选择比实际颜色更深的颜色:(

在点击颜色选择器之前: enter image description here

点击颜色选择器后: enter image description here

怎么来的?

6 个答案:

答案 0 :(得分:28)

只是想通过一些截图来详细说明接受的答案。

如果要在Photoshop和Xcode 完全之间匹配RGB值(不在颜色空间之间进行转换),则需要将图像保存为通用RGB,并使用通用RGB颜色空间输入任何滴管值。 / p>

  • 当您选择" Save for Web&装置"从Photoshop中取消选中"转换为sRGB"框。

enter image description here

  • 在Xcode中,单击颜色选择器中的颜色空间弹出窗口,然后选择" Generic RGB",然后从Photoshop输入红色,绿色和蓝色值, NOT THE HEX VALUE as由于某种原因,这会恢复为sRGB颜色空间(注意不要选项卡到十六进制字段,因为这也会将颜色空间更改为sRGB)。

enter image description here

更多信息here,包括如何匹配屏幕截图。

答案 1 :(得分:13)

我在这个答案中找到了一个解决方案/解释(我仍然感到困惑):https://stackoverflow.com/a/9203647/460750

基本上,我为解决问题所做的是选择RGB“类型”选择(颜色选择器下的小方块)Apple RGB选项,并手动输入R,G和B值而不是使用选择器。

...奇

答案 2 :(得分:2)

因为组件编号没有指定颜色。我们还需要知道xCode使用的颜色空间。编码或解码的色彩空间在RGB滑块的左下方提供。

enter image description here

默认情况下,xCode会选择" Generic RGB"这就是UIColor使用RGB的spec颜色。如果我们使用放大镜,它将变为"设备RGB“空间,这取决于您当前的屏幕。 所以“sRGB"或者" Adob​​e RGB"如果你使用放大镜来挑选颜色,会更好或接近你想要的。

答案 3 :(得分:1)

我认为Generic RGB也有效。 诀窍是你需要手动输入R G B的数量 在下拉列表中更改RGB模式后

奇怪......(太)

答案 4 :(得分:0)

更新10.10.4

我也遇到过这个问题,我向Apple报告过,它似乎已经在10.10.4上解决了(它与颜色选择器有关,而不是与Xcode / IB有关)

其他人可以确认吗?

答案 5 :(得分:0)

这是一个老问题,但对我来说添加一些信息非常重要。 多年来一直为我工作的唯一方法是不使用PS的颜色选择器,而是使用macOS'内置"数字色度计"。

enter image description here

它与每次安装的macOS捆绑在一起,并且从那里发出的RGB值与#34; Generic RGB"始终在Xcode Storyboards中重现正确的颜色。

enter image description here