گروهها به شما این امکان را میدهند که طراحی صفحه ساعت خود را به یک ساختار منطقی تقسیم کنید.
این میتواند برای سازماندهی اجزا مفید باشد. میتوانید به هر گروه یک name بدهید تا مشخص شود برای چه کاری است.
دلیل دیگری که گروهها بسیار مفید هستند این است که میتوانید با هر چیزی که در آن گروه قرار دارد به عنوان یک موجودیت واحد رفتار کنید تا ظاهر آن را تنظیم کنید، حتی به صورت پویا با تغییر منابع داده سازگار شوید.
در اینجا چند مثال از چگونگی مفید بودن این مورد آورده شده است. Group زیر شامل عناصر مختلف PartText, PartImage و PartDraw است که یک بخش منطقی از صفحه ساعت را تشکیل میدهند:
<Group name="decorations" x="100" y="100" width="200" height="200"> <!-- PartText, PartImage, PartDraw elements go here --> </Group>
تغییر رفتار محیطی
با تعریف Group ، میتوان میزان دیده شدن کل Group را برای حالت Ambient تنظیم کرد، برای مثال، برای مخفی کردن Group :
<Group name="decorations" x="100" y="100" width="200" height="200"> <Variant mode="AMBIENT" target="alpha" value="0" /> <!-- PartText, PartImage, PartDraw elements go here --> </Group>
این کار از نیاز به اضافه کردن یک عنصر Variant به صورت جداگانه به هر عنصر فرزند جلوگیری میکند.
تبدیل یک گروه
مشابه تنظیم رفتار محیط، با استفاده از Variant ، بسیاری از ویژگیهای Group را میتوان با استفاده از یک یا چند عنصر Transform تنظیم کرد.
در این مثال، Group بر اساس ثانیه چرخانده میشود. با تعیین pivotX و pivotY به مقدار 0.5 ، چرخش حول مرکز Group رخ میدهد، صرف نظر از اینکه هر عنصر، مانند PartText یا PartImage در کجای آن Group قرار دارد:
<Group name="decorations" x="100" y="100" width="200" height="200"> <!-- One full rotation per minute --> <Transform target="angle" value="[SECOND] * 6" /> <!-- PartText, PartImage, PartDraw elements go here --> </Group>