颜色配置

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" displayName="color_theme_0" colors="#ff000000 #ff888888 #ffffffff"/>
    <ColorOption id="1" displayName="color_theme_1" colors="#ffff0000 #ffff8800 #ffffff00"/>
    <ColorOption id="2" displayName="color_theme_2" colors="#ff00ff00 #ff00ff88 #ff00ffff"/>
    <ColorOption id="3" displayName="color_theme_3" colors="#ff0000ff #ff8800ff #ffff00ff"/>
</ColorConfiguration>

此配置表示四种调色板的选择,每种调色板包含三种颜色。

如果 colors 属性仅包含单个值,则按如下所示引用主题,例如,设置 tintColor

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

如果 colors 属性包含多个值的调色板,则按以下示例所示引用索引。具体来说,此示例显示了在所选 ColorOption 中选择第二种颜色的方法

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

属性

ColorConfiguration 元素具有以下属性

必需属性

以下属性是必需的

id
配置值的唯一标识符。
displayName
对应于在表盘编辑器中显示的文本的资源 ID。
defaultValue
如果用户未在表盘编辑器中显式更改配置,则使用此默认配置值。这应设置为内部 ColorOption 元素之一的 id

可选属性

以下属性是可选的

icon
对应于在表盘编辑器中显示的可绘制资源的资源 ID。其最大尺寸应为 400x400 px。
screenReaderText
对应于如果用户启用了 TalkBack 则使用的文本的资源 ID。

内部元素

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

ColorOption 属性

ColorOption 元素必须包含以下属性

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

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

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

ColorOption 元素可以可选地包含以下属性

icon
对应于在表盘编辑器中显示的可绘制资源的资源 ID。
screenReaderText
对应于如果用户启用了 TalkBack 则使用的文本的资源 ID。