UIColor 与 IB 颜色(颜色配置文件问题)

2023-11-25

我正在使用 XCode 8.2.1。 我刚刚了解了颜色配置文件,并且 RGB 值不是通用的。 但仍然无法理解如何在代码中使其正确。 在 Interface Builder 中,我为标签选择了预定义的“深灰色”。通用 RGB 配置文件中的值为 (85, 85, 85)。另外,在代码中,我将另一个标签颜色设置为 [UIColor darkGrayColor]。我原以为它们有相同的颜色,但它们是不同的。

我用的方法

- (BOOL)getRed:(nullable CGFloat *)red green:(nullable CGFloat *)green blue:(nullable CGFloat *)blue alpha:(nullable CGFloat *)alpha

获取 RGB 值。对于在 IB 中设置颜色的标签,当我切换到设备 RGB 配置文件时,我看到值实际上是 (104,104,104),它们对应于 IB 中的值。 所以看起来在代码中使用了Device RGB配置文件。

所以我的问题是:

  1. 为什么在IB和代码中设置的标准“深灰色”不同?
  2. 如何在代码中使用通用 RGB 配置文件,以便我可以使用 Interface Builder 匹配颜色值?

你好,杰西,请参阅下面的答案:

  • Why standard "Dark Gray Color" is different when set in IB and in code?

标准Dark Gray Color使用不同Storyboard并以编程方式因为Storyboard uses sRGB IEC61966-2.1 or Generic RGB Color Profile默认情况下,当您以编程方式设置它时,需要Device RGB Color profile因为设备 RGB iOS 设备就在那里iPhones, iPads它们在显示颜色配置文件方面具有不同的特征。

  • How to use Generic RGB profile in code, so I can match color values with Interface Builder?

当你设置UIColor以编程方式,因此您无法选择任何Color Profile因为这需要Device RGB Color Profile.

如果你想让它相同,那么在你的故事板中选择你的颜色选择器,打开设置并将其更改为Device RGB

请参阅下面的屏幕截图,了解使用 Storyboard 设置颜色配置文件:

enter image description here

我希望它能帮助你......

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

UIColor 与 IB 颜色(颜色配置文件问题) 的相关文章

随机推荐

  • ARC 下 IBOutlets 应该强还是弱?

    我正在使用 ARC 专门为 iOS 5 进行开发 应该IBOutlets to UIViews 和子类 是strong or weak 下列 property nonatomic weak IBOutlet UIButton button
  • 使用正则表达式拆分 CamelCase

    我有这段代码可以通过正则表达式拆分 CamelCase Regex Replace input lt a z A Z 1 RegexOptions Compiled Trim 然而 它没有正确地分割它 ShowXYZColours 它产生S
  • 权限被拒绝 - React Native 中的地理定位

    我一直在使用 React Native 让自定义位置工作并设置 NSLocationWhenInUseUsageDescription 键 在ios模拟器上运行时 报错如下 code 2 message Unable to retrieve
  • 如何在android中获取手机的smsc号码?

    我正在尝试在android中以编程方式获取手机的短信中心号码 那可能吗 我尝试过搜索 但没有找到具体的结果 拨打这个号码 4 6 3 6 转到电话信息 在底部您将看到 SMSC 字段 按刷新即可
  • Nhibernate 查询具有包含值的字典属性的项目

    我需要一种方法在 Nhibernate 中查询具有包含值的字典属性的项目 Assume public class Item public virtual IDictionary
  • 如何使用 Selenium 在测试之间存储值

    Selenium 能够临时存储数据项 然后在后续测试中检索它们 例如 storeText id ctl00 ContentPlaceHolder1 FormView1 someValue 当需要跨测试边界结转值时 这在单个测试中以及同一测试
  • 读取语句输入时无法识别“*”和“/”

    我开始学习 Fortran 我正在做一个小案例测试程序 其中用户输入两个实数并选择算术运算符 从 当用户选择 时出现以下错误 F6502 read
  • 将 python 与更快的语言混合以在 GAE 中进行优化

    我是 Python 和 GAE 领域的新手 我有一个问题 对于 Python 通常的方法是仅在需要时优化代码 修复更紧急的瓶颈 实现这一目标的方法之一是用 C 重写程序最关键的部分 通过使用 GAE 我们会永远失去这种可能性吗 自从谷歌的G
  • C 结构中的灵活数组成员

    引用 C std 第 6 7 2 1 节 struct s int n double d 这是一个有效的结构声明 我正在寻找这种语法的一些实际用途 准确地说 这个结构与将 double 作为第二个元素相比有何不同 或者这是 你可以用多种方式
  • JAXB-WS - 使用 @WebMethod 强制字段

    我有一个 WebMethod 调用 WebMethod public int cancelCampaign String campaignId String reason 我想将 CampaignId 字段标记为必填字段 不知道该怎么做 我
  • 如何使用 ssh 导出 mysql 数据库?

    我可以在 ssh 上使用哪些命令来使用 SSH 导出 下载 mysql 数据库 To 使用 SSH 导出 mysql 转储 执行以下命令 mysqldump u username p dbname gt db dump sql userna
  • 为什么 __init__.py 没有被调用?

    我使用的是 Python 2 7 并有以下文件 init py aoeu py init py有以下内容 aoeu aoeuaoeu aoeuaoeuaoeu 所以我希望当Python尝试加载时运行aoeu py会出错 init py 但事
  • 使用 Angular2 将 HTML 从服务器插入 DOM(Angular2 中的常规 DOM 操作)[重复]

    这个问题在这里已经有答案了 我想将从服务器检索到的一些 HTML 插入到 angular2 中的 DOM 元素中 我似乎无法找出最好 正确的方法来做到这一点 我不能只是将 my data 放入模板中 因为 Angular 2 会自动转义 H
  • 本地作用域与 __init__.py 内的相对导入

    我注意到了asyncio init py从Python 3 6开始使用以下构造 from base events import all base events all The base events符号没有在源代码中的任何地方导入 但模块仍
  • HABTM 重复记录

    我有2个型号Game Theme并且它们有一个 has and belongs to many 关联 我尝试了很多解决方案来防止重复记录games themes表 但没有解决方案有效 问题是 games themes是一个表 但它不是一个模
  • 创建项目时 XCode 6.0.1 错误:文件“排除”不存在

    当我在 XCode 6 0 1 中创建新项目时 收到以下错误消息 文件 排除 不存在 它似乎只影响文件的版本控制 即生成的存根文件在项目创建后不会提交到 github 中 什么会导致这个问题 对我来说 这个问题是因为我之前创建了一个同名的项
  • 如何使 Backbones toJSON 函数包含子模型和集合?

    我有一些模型不仅包含基本数据属性 而且可能具有一个或两个包含另一个模型对象的属性 一直没问题 但现在我想打电话 myRootModel toJSON 我注意到它不会在我尝试调用 toJSON 的模型中的其他模型上调用 toJSON 有没有办
  • 在没有 livereload 的情况下构建时,文件路径中缺少“android_asset/www/”

    我正在开发一个离子应用程序 ionic v1 7 13 cordova v5 4 1 当我跑步时 ionic run android l 一切正常 我的所有项目文件都已正确加载 当我尝试在没有 livereload 的情况下运行时 就会出现
  • 如何在 Blazor WebAssembly 中使用 SQLite?

    对于 Blazor WebAssembly 我提出了使用 SQLite 的想法 这个问题提到这是不可能的 是否可以在 Blazor WebAssembly 中使用 SQLite 如果可以 如何使用 从 NET 6 开始 您可以在 Blazo
  • UIColor 与 IB 颜色(颜色配置文件问题)

    我正在使用 XCode 8 2 1 我刚刚了解了颜色配置文件 并且 RGB 值不是通用的 但仍然无法理解如何在代码中使其正确 在 Interface Builder 中 我为标签选择了预定义的 深灰色 通用 RGB 配置文件中的值为 85