xcode - 在 xcode 颜色 Assets 中按十六进制代码搜索颜色

标签 xcode colors assets

如果 Assets 中已经存在像 #4D4D4D 这样的颜色,我如何在 Xcode 中搜索?我尝试通过十六进制代码进行搜索,但没有显示任何内容。

最佳答案

这在使用 Xcode 时是不可能的,但可以使用终端命令。

假设您在 Assets 中定义了一个新的颜色集。如果打开 Inspector 并选择此设置,则可以通过十六进制模式定义颜色:
enter image description here

如果您随后在左侧 Pane 中选择此颜色并选择“在 Finder 中显示”,Finder 将显示一个文件夹,其中包含一个名为 Contents.json 的单个文件。此文件包含十六进制的 RGB 颜色:

{
  "info" : {
    "version" : 1,
    "author" : "xcode"
  },
  "colors" : [
    {
      "idiom" : "universal",
      "color" : {
        "color-space" : "srgb",
        "components" : {
          "red" : "0x12",
          "alpha" : "1.000",
          "blue" : "0x56",
          "green" : "0x34"
        }
      }
    }
  ]
}

为了找到定义为 #1234356 的所有颜色,必须在 Assets 目录中搜索包含以下所有字符串的文件: "red" : "0x12""green" : "0x34""blue" : "0x56" 。但是 Xcode 不允许在文件中指定这样的 AND 搜索。

但是,这可以使用终端命令实现。 This post 显示了许多使用 grepawk 命令变体的示例,这些命令使用某种正则表达式来表达文件中的 AND 条件。 this answer 中提到的一个单行是:
awk 'NR==FNR{a[$0];next} {for(s in a) if(!index($0,s)) exit 1}' strings RS='^$' file

语法可能有点神秘,但它应该可以工作。

为了找到 Assets 目录中的所有文件,您必须指定此目录的搜索路径(最简单的方法是将此文件夹从 Finder 绘制到终端命令),并指定递归搜索。

可能需要安装适当的命令,因为并非所有命令都已预先安装。 PS:我没有亲自尝试过,祝你好运!

关于xcode - 在 xcode 颜色 Assets 中按十六进制代码搜索颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59466391/

相关文章:

算法:从字符串创建颜色

python - 为 networkx 图创建自己的颜色条

javascript - Ruby On Rails - 包含 CSS 和 JS 的最佳方式

php - 为什么 Assets :install doesn´t copy/Resources/public to/web folder?

ios - 如何保持 UIView 始终显示在多个 View 上

javascript - iOS:在 UIWebview 中使用 javascript 调用 obj-c 方法

algorithm - 查找颜色相似的图像

javascript - Phonegap - Xcode 中的 Javascript 调试

linux - 未找到体系结构 x86_64、macOS Sierra

java - Dropwizard,为同一 URI 提供两种 Assets