【问题标题】:Different colors even though RGB values are equal即使 RGB 值相等,颜色也不同
【发布时间】:2017-04-02 13:18:45
【问题描述】:

我在使用 Xcode 中的 Interface Builder 时遇到了一个非常奇怪的颜色问题。

我已将视图控制器中视图的背景设置为#1F242C

到目前为止一切顺利。 然后我在一个 nib 文件中创建了一个 UITableViewCell,我将背景设置为完全相同的颜色#1F242C:

现在,当我启动应用程序时,UITableViewCell 的背景突然与 viewcontroller 视图的背景不同,即使 RGB 值匹配并且不透明度也匹配。

当我用 Photoshop 分析截图时

视图的背景是:#29303A

单元格的背景是:#1F242C

尽管 RGB 值相同,为什么它们的颜色不同?我不会在我的源代码中以编程方式更改颜色。

以下是不同颜色的外观:

【问题讨论】:

  • 在您的调试视图层次结构中,您可以检查生成的视图吗?颜色是否仍然不同以及您期望它们出现的视图?是不是有一个视图与它们重叠导致了这个问题?
  • 你能贴一张不同颜色的视图的屏幕截图吗?
  • 我已经发布了视图的截图
  • 由于 tableView 和单元格的背景颜色相同,也许您应该尝试为单元格的背景使用清晰的颜色。曾经我也遇到过这种情况,但我找不到原因。

标签: ios xcode uitableview colors interface-builder


【解决方案1】:

这是由于 iOS 10 和新设备屏幕的新扩展色域造成的问题。

在颜色选择器中单击“RGB 滑块”右侧的滚轮,然后选择 sRGB IEC61966 2-1。

您会看到此时 RGB 值会发生变化。将它们恢复为您之前输入的 RGB 值。应该是这样的!

【讨论】:

  • 只有在情节提要中直接设置颜色时才会出现这个问题?以编程方式设置颜色是什么情况?
  • @Essenceofchicken 是的,问题来自情节提要。在最新的 Xcode 中,您必须更改此参数以匹配以编程方式创建的 UIColor(在最新版本中不会更改)。
猜你喜欢
  • 2016-05-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-21
  • 1970-01-01
  • 2013-04-10
相关资源
最近更新 更多