风格

风格指定一组配置值,作为预设进行分组。通常,用户可以在配套应用中选择这些风格。

一个Flavor可以包含现有配置的值,包括以下类型

  • 布尔配置
  • 颜色配置
  • 列表配置
  • 复杂功能槽

自版本 2 起

语法

<Flavor id="string" displayName="string" icon="string"
    screenReaderText="string">
    <!-- Flavor-specific child elements. -->
    <Configuration ... />
    <ComplicationSlot .../>
<Flavor/>>

您可以将Flavor元素包含在UserConfigurations元素中,如下例所示

<UserConfigurations>
  <!-- Configuration definitions go here -->
  <ColorConfiguration id="themeColor" ... />
  <!-- ... -->

  <!-- The defaultValue is required. Set this attribute to the ID
       of the flavor that the system should show by default. -->
  <Flavors defaultValue="1">
    <Flavor id="1" displayName="1st flavor" icon="flavor_1_preview">
        <Configuration id="themeColor" optionId="0"/>
        <ComplicationSlot slotId="0">
            <DefaultProviderPolicy
                defaultSystemProvider="DAY_OF_WEEK"
                defaultSystemProviderType="SHORT_TEXT"/>
        </ComplicationSlot>
    </Flavor>

    <Flavor id="2" displayName="2nd flavor" icon="flavor_2_preview">
        <Configuration id="themeColor" optionId="1"/>
        <ComplicationSlot slotId="0">
            <DefaultProviderPolicy
                defaultSystemProvider="WATCH_BATTERY"
                defaultSystemProviderType="SHORT_TEXT"/>
        </ComplicationSlot>
    </Flavor>
  </Flavors>
</UserConfigurations>

要使用Flavors,必须将以下内容添加到res/xml/watch_face_info.xml

<?xml version="1.0" encoding="utf-8"?>
<WatchFaceInfo>
    ...
    <MultipleInstancesAllowed value="true" />
    <FlavorsSupported value="true" />
</WatchFaceInfo>

属性

Flavor元素具有以下属性

必需属性

以下属性是必需的

id
Flavor的唯一标识符。
displayName
与在配套应用中显示的文本对应的资源 ID。

可选属性

以下属性是可选的

icon
与在配套应用中显示的可绘制资源对应的资源 ID。最大尺寸应为 360x360 像素。
screenReaderText
如果用户启用了TalkBack,则对应于所用文本的资源 ID。

内部元素

Flavor 元素必须包含至少一个 Configuration 元素,并且可以选择包含 ComplicationSlot 元素。

  • Configuration 元素引用先前定义的配置元素,例如 BooleanConfiguration,使用 id 属性。Configuration 元素使用 optionId 属性设置此配置选项的选定值。

  • ComplicationSlot 元素可用于为给定的 Flavor 指定 DefaultProviderPolicy