# 图标

> 应用图标库里的一个标记，颜色和大小由你选，还可以由 Logic 变量驱动。

**图标**画出应用图标库里的一个标记，库里大约有 2,770 个具名字形，按钮的正面、状态指示灯的各个状态和画面自身的标记也从同一套里挑；它也可以画你自己导入的一项图标资源。这个标记可以是固定的，它的两个可绑定区域（字形和颜色）也可以各自跟着一个 Logic 变量走，于是一个阀门符号会在几个标记之间切换，或者一个指示器随着现场变化改变颜色。它属于*媒体*类；新放置的一个占 2 × 2 个单元格。

## 内容 {#content}

| 字段 | 作用 | 取值 | 默认 |
|---|---|---|---|
| 图标（按名称或关键词搜索） | 用图标库的名称和整理好的搜索关键词（“用英文：wifi、save、warning…”）收窄下面那张字形表格。应用里每一个挑选器搜索图标库的方式都一样，所以在一处找得到的标记，在别处也找得到。 | 自由文本 | 空 |
| 字形表格 | 默认的字形，按一下格子就选中。固定显示的就是它，绑定的变量什么也解析不到时，退回的也是它。 | 图标库里的任意字形 | 星形字形 |

你导入的一项图标*资源*（Logic ▸ Assets ▸ Icons 里的单路径 SVG）也可以站在字形这个可绑定区域上：它画在同一个方框里，按同一个指定大小绘制，需要继承颜色时也用同一种墨色；一幅自己给自己上色的图形，保留它自己的颜色。

## 数据 {#data}

两处绑定都在面板里用它们所代表的东西确认自己：绑定的变量当前那个标记，用工作站自己的字体画出来；绑定的颜色，画在它的十六进制值旁边。因为写出来的码位是一个豆腐块，而十六进制是一个谁也想象不出的词。

| 字段 | 作用 | 取值 | 默认 |
|---|---|---|---|
| 字形来自图标变量 | 一个输出图标的 Logic 变量的带根地址。列表按名称列出每个变量，放在文件夹里的变量连同文件夹一起列出（Oven / Mark），存下的地址也带着这些文件夹（`Variables.Oven.Mark`）。绑定之后，字形这个可绑定区域跟着变量解析到的标记走，从值到图标的那套逻辑写在变量里，不在这里（见 [Logic 页面](logic)）。选`（无）`就解除绑定，让这个区域回到固定字形。 | 一个图标变量，或者`（无）` | `（无）` |
| 颜色来自颜色变量 | 一个输出颜色的 Logic 变量的带根地址，以同样的方式驱动颜色这个可绑定区域。它和字形那个区域彼此独立，所以固定的字形可以配一个由逻辑驱动的颜色，反过来也一样。 | 一个颜色变量，或者`（无）` | `（无）` |

一个绑定了却读不到的区域（地址解析不到，或者质量不可用）保留所配置的默认值，而不是画出变量那个陈旧的值，同时组件戴上共用的读数异常标记。绑定的颜色在到达屏幕之前会先被验证为一种安全的涂色；不是颜色的文字，让所配置的颜色继续生效。

## 颜色与大小 {#color-and-size}

| 字段 | 作用 | 取值 | 默认 |
|---|---|---|---|
| 颜色 | 字形的墨色，写成十六进制颜色。留空则跟随主题自身的前景色，那个颜色本来就会响应浅色和深色。 | `#RRGGBB`，或留空 | 空（跟随主题） |
| 大小 | 字形的大小，按与设备无关的像素计。同一个数也决定一项 SVG 资源那个方框的大小，所以两种标记对这个字段的反应是一样的。 | 任意数值 | 40 |

## 高级 {#advanced}

| 字段 | 作用 | 取值 | 默认 |
|---|---|---|---|
| 字形代码（高级） | 挑选器背后那串原始的字形文本，可以直接粘贴一个码位进去。 | 原始文本 | 所选中的字形 |

图标是显示类组件：它不下达任何命令，也从不戴锁标记。共用的外观、标识、位置与图层、动作这几个分区，写在[组件页面](components#the-shared-property-sections)。
