ColorConfiguration

ColorConfiguration を使用すると、ユーザーはウォッチフェイス エディタからウォッチフェイスの要素の色を変更できます。

ColorConfiguration が定義されている場合、tintColor などの別要素の色ベースの属性は、ColorConfiguration および ColorOption の 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>

この構成は、それぞれ 3 色を含む 4 つのパレットを選択することを表しています。

colors 属性に値が 1 つしかない場合は、次のようにテーマを参照します。たとえば、tintColor を設定するには次のようにします。

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

colors 属性に複数の値のパレットが含まれている場合は、次の例に示すようにインデックスを参照します。この例では具体的には、選択された ColorOption で 2 番目の色を選択しています。

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

属性

ColorConfiguration 要素には次の属性があります。

必須属性

次の属性は必須です。

id
それぞれの構成値に割り当てられる一意の識別子。
displayName
ウォッチフェイス エディタに表示されるテキストに対応したリソース ID。
defaultValue
ユーザーがウォッチフェイス エディタで明示的に構成を変更しない場合に使用される、デフォルトの構成値。これは ColorOption 内部要素の 1 つに割り当てられた id に設定する必要があります。

オプションの属性

次の属性は省略可能です。

icon
ウォッチフェイス エディタに表示されるドローアブル リソースに対応するリソース ID。最大サイズは 400x400 ピクセルです。
screenReaderText
ユーザーが TalkBack を有効にしている場合に使用されるテキストに対応したリソース ID。

内部要素

ColorConfiguration 要素には、1~100 個の ColorOption 内部要素を含めることができます。

ColorOption 属性

ColorOption 要素には次の属性を含める必要があります。

id
それぞれのオプション値に割り当てられる一意の識別子。
displayName
ウォッチフェイス エディタに表示されるテキストに対応したリソース ID。

ColorOption 要素には、次のいずれかの属性を 1 つ含める必要があります。

colors
スペース区切りの ARGB の色値のリスト。

ColorOption 要素には必要に応じて次の内部要素を含められます。

icon
ウォッチフェイス エディタに表示されるドローアブル リソースに対応したリソース ID。
screenReaderText
ユーザーが TalkBack を有効にしている場合に使用されるテキストに対応したリソース ID。