בעזרת Transform אפשר לשנות את המראה של רכיבים או קבוצות של רכיבים, אבל יכול להיות שתרצו להחליף בין רשימה של התנהגויות על סמך תנאי מסוים. זה דומה להצהרת switch או להצהרת if…else בשפות אחרות.
לדוגמה, יכול להיות שתרצו להציג רקע שונה בשעות הבוקר המוקדמות, בבוקר, בצהריים, אחר הצהריים, בערב ובלילה.
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>
כמה דברים שחשוב לדעת על תנאים:
- המערכת משתמשת ברכיב
Compareהראשון שבו הערך שלexpressionהואtrue, ומתעלמת מכל השאר. - בגלל פורמט ה-XML, לעיתים קרובות הכי קל להוסיף את הגדרת הביטוי לתג
CDATAכמו בדוגמה הבאה, כי כך לא צריך להשתמש בתווי escape של XML באמצעות תגי ישות כמו>ו-&. - אפשר להטמיע מבנים של
Conditionבתוך מבנים אחרים.