将自定义调色板添加到XCode Interface Builder

Phe*_*ter 35 xcode interface-builder ios

我目前的长期项目采用了一系列自定义颜色.在代码中,我们使用类别按名称访问这些颜色.这很有效,但有时候,例如构建笔尖时,这些颜色不会以编程方式设置.

我正在寻找一种方法来定义一组命名的颜色.例如,在为UIView设置背景颜色时,我希望Interface Builder中的下拉列表按名称列出我的自定义颜色.有谁知道实现这一目标的方法?谢谢!

Mar*_*ens 60

Xcode 9

您现在可以使用其他选项将颜色集或命名颜色添加到资源中.这是Xcode 9中的新功能.

1.为项目添加命名颜色

添加命名颜色

在*.xcassets>右键单击>新颜色集

2.为视图指定名称颜色

在此输入图像描述

您的新命名颜色现在显示在您的颜色选择器中.

  • 如果你使用这种方法,你可以在代码中获得颜色,这样:```myView.backgroundColor = UIColor(命名为:"MyColor")```.仅适用于iOS 11或更高版本 (7认同)
  • 这是正确的@ChintanShah.我为此提交了一份Apple Bug报告.我必须关闭Xcode并重新打开它才能看到故事板更新为新颜色.运行应用程序始终显示正确的颜色. (3认同)
  • 但是事后更改颜色不会反映在情节提要中。 (2认同)
  • 不幸的是,在我们仍然必须支持 iOS 10 时无法使用它! (2认同)

Sur*_*gch 33

自定义调色板

在Interface Builder的颜色对话框中,选择第三个选项卡.单击齿轮和新建以创建新的自定义调色板.您可以随意命名.然后单击加号(+)按钮添加新颜色并命名.使用颜色选择器工具设置颜色.

在此输入图像描述

RGB或Hex的颜色

选择颜色对话框中的第二个选项卡,然后选择RGB滑块.这将允许您使用RGB或十六进制值设置颜色.

在此输入图像描述

更多帮助

  • 此答案中的第一个解决方案将在“~/Library/Colors”中创建一个 .clr 文件,您可以将其添加到您的项目 Supporting Files 文件夹中并与您的团队共享;) (6认同)

Jer*_*rry 28

是的,您可以在IB中创建和编辑调色板,然后与您的团队共享本文包含所有详细信息:http://natashatherobot.com/xcode-color-palette/

  • 链接可能会过期,您能否提供解决方案的更多详细信息. (3认同)