ColorConfiguration

借助 ColorConfiguration,用户可以通过表盘编辑器更改表盘元素的颜色。

定义 ColorConfiguration 后,其他元素(例如 tintColor)的任何基于颜色的属性均可引用配置中的颜色,方法为使用内含 ColorConfigurationColorOption 的 ID 值的表达式。如需查看完整演示,请参阅示例

此元素在 Wear OS 4 中推出。

语法

<ColorConfiguration id="string" displayName="string" icon="string"
                    screenReaderText="string" defaultValue="string">
  <ColorOption id="string" displayName="string" screenReaderText="string"
               icon="string" colors="argb-color-list" />
  ...
</ColorConfiguration>

示例

假设已定义以下颜色配置(ID 值为 themeColor):

<ColorConfiguration id="themeColor" defaultValue="0"
                    displayName="color_selector_display_name">
    <ColorOption id="0" colors="#ff000000 #ff888888 #ffffffff"/>
    <ColorOption id="1" colors="#ffff0000 #ffff8800 #ffffff00"/>
    <ColorOption id="2" colors="#ff00ff00 #ff00ff88 #ff00ffff"/>
    <ColorOption id="3" colors="#ff0000ff #ff8800ff #ffff00ff"/>
</ColorConfiguration>

此配置表示可选择四个 Palette,每个 Palette 包含三种颜色。

如果 colors 属性仅包含一个值,请按以下方式引用主题。例如,设置 tintColor 的方式如下:

<PartText ... tintColor="[CONFIGURATION.themeColor]">

如果 colors 属性的 Palette 包含多个值,请按以下示例所示引用索引。具体而言,此示例展示了如何在选定的 ColorOption 中选择第二种颜色:

<PartText ... tintColor="[CONFIGURATION.themeColor.1]">

属性

ColorConfiguration 元素具有以下属性:

必需属性

以下属性是必需属性:

id
配置值的唯一标识符。
displayName
与表盘编辑器中显示的文本对应的资源 ID。
defaultValue
如果用户没有在表盘编辑器中明确更改配置,则使用默认配置值。此项应该设置为某个内部 ColorOption 元素的 id

可选属性

以下属性是可选属性:

icon
与表盘编辑器中显示的可绘制资源对应的资源 ID。其最大尺寸应为 400x400 像素。
screenReaderText
与用户已启用 TalkBack 时使用的文本对应的资源 ID。

内部元素

ColorConfiguration 元素可以包含 1 到 100 个内部 ColorOption 元素。

ColorOption 属性

ColorOption 元素必须包含以下属性:

id
选项值的唯一标识符。
displayName
与表盘编辑器中显示的文本对应的资源 ID。

ColorOption 元素必须包含以下属性之一:

colors
以空格分隔的 ARGB 颜色值列表。

ColorOption 元素可以选择包含以下属性:

icon
与表盘编辑器中显示的可绘制资源对应的资源 ID。
screenReaderText
与用户已启用 TalkBack 时使用的文本对应的资源 ID。