要素のコンテンツを動的に変更する

Transform を使用すると、要素または要素のグループの外観を変更できますが、条件に基づいて動作のリストを切り替えたい場合もあります。これは、他の言語の switch ステートメントまたは if…else ステートメントに似ています。

たとえば、早朝、午前、昼食、午後、夕方、夜で異なる背景を表示できます。

Watch Face Format の Condition ステートメントを使用すると、式の評価に応じてウォッチフェイス シーンのさまざまな部分を含めることができます。例:

<Condition>
    <Expressions>
        <Expression name="is_early_morning">
            <![CDATA[[HOUR_0_23] >= 6 && [HOUR_0_23] < 8]]
        </Expression>
        <Expression name="is_morning">
            <![CDATA[[HOUR_0_23] < 12]]
        </Expression>
        <!-- Further expressions -->
    </Expressions>
    <Compare expression="is_early_morning">
        <!-- Early morning content here -->
    </Compare>
    <Compare expression="is_morning">
        <!-- Morning content here -->
    </Compare>
    <!-- Further Compare elements -->
    <!-- The "else" case -->
    <Default>
        <!-- content -->
    </Default>
</Condition>

条件に関する注意事項は次のとおりです。

  1. expressiontrue である最初の Compare 要素が使用され、他は無視されます。
  2. XML 形式のため、多くの場合、ここに示されているように、式定義を CDATA 要素でラップするのが最も簡単です。これにより、&gt;&amp; などのエンティティ要素を使用した XML エスケープが不要になります。
  3. Condition 構造体はネストできます。