Możesz zmienić wygląd części tarczy zegara, np. pozycję, rozmiar lub widoczność, często w odpowiedzi na źródła danych wejściowych, takie jak pora dnia lub akcelerometr.
W Formacie tarczy zegarka można to osiągnąć za pomocą elementu Transform.
Nie wszystkie elementy można przekształcić, ale główne elementy podlegające przekształceniu to: elementy Group i Part* oraz elementy rysunkowe, takie jak kształty i style.
Atrybuty każdego elementu, które można przekształcać, są oznaczone w dokumentacji referencyjnej.
Samo przekształcenie jest określone w atrybucie value w języku wyrażeń formatu tarczy zegarka, który może zawierać źródła danych. target
określa atrybut, który ma zostać zmieniony w elemencie nadrzędnym.
Aby na przykład zmienić kąt Arc w zależności od postępu kroku:
<Arc centerX="225" centerY="225" height="420" width="420" startAngle="0" endAngle="0"> <Transform target="endAngle" value="[STEP_PERCENT] * 3.6" /> <Stroke color="#FF00FF" thickness="20" /> </Arc>
Gdy zmienia się wartość STEP_PERCENT, wartość endAngle jest ponownie obliczana, a wykres Arc jest rysowany od nowa.
Gdy element Przekształć zmienia wartość docelową, warto, aby ta zmiana była animowana w określonym czasie, a nie następowała natychmiast, co mogłoby być nieprzyjemne dla użytkownika. Użyj elementu Animation, aby:
<PartDraw x="100" y="150" width="250" height="120" > <Ellipse x="0" y="0" width="50" height="50"> <Fill color="#ff0000" /> <!-- Red ball with no animated transition --> <Transform target="x" value="[SECOND] % 2 == 0 ? 0 : 200"/> </Ellipse> <Ellipse x="0" y="100" width="50" height="50"> <Fill color="#00ff00" /> <!-- Green ball eases between each position --> <Transform target="x" value="[SECOND] % 2 == 0 ? 0 : 200"> <Animation duration="1" interpolation="EASE_IN_OUT" /> </Transform> </Ellipse> </PartDraw>
Przekształcenia za pomocą akcelerometru
Chociaż można używać elementu Transform z danymi żyroskopowymi pochodzącymi ze źródeł takich jak ACCELEROMETER_ANGLE_X, aby zmieniać położenie lub skalę elementu, format tarczy zegarka udostępnia osobny element do tych celów: Gyro.
Ułatwia to uproszczenie ogólnego obrazu, oddzielając przekształcenie oparte na ruchu od innych przekształceń, takich jak przekształcenie oparte na czasie, które może być zastosowane do tego samego elementu.