کار کردن با نوشتار

برای ساعت‌های دیجیتال، درصورت امکان باید از DigitalClock استفاده کنید. برای همه نوشتارها یا ساعت‌های دیگر که نمی‌توانند بااستفاده از DigitalClock نشان داده شوند، PartText محتوی برای پرداز نوشتارمحور است.

بسته به اینکه می‌خواهید نوشتار دایره‌ای یا معمولی نشان دهید، PartText باید یا عنصر Text یا عنصر TextCircular را داشته باشد.

کار با قلم‌ها و قلم‌های بیت‌مپ

استفاده از قلم‌های سفارشی به صفحه ساعت شما امکان می‌دهد با سبک خاص خود متمایز شود.

دو روش برای استفاده از قلم‌های سفارشی وجود دارد، هم در TimeText و هم در PartText ظرف‌ها.

  1. قلم سفارشی family را در عنصر Font مشخص کنید. مجموعه‌ای از قالب‌های رایج پشتیبانی می‌شوند که باید در res/font قرار گیرند

    برای مثال، استفاده از قلم Pacifico از Google Fonts، و قرار دادن دارایی به‌عنوان res/font/pacifico.ttf:

    <PartText x="0" y="50" width="450" height="250">
        <Text align="CENTER">
            <Font family="pacifico" size="96">Hello!</Font>
        </Text>
    </PartText>

  2. یا BitmapFont را تعریف کنید که تصاویر بیت‌مپ را در res/drawable ارائه دهد:

    <BitmapFonts>
        <BitmapFont name="myhandwriting">
            <Character name="1" resource="digit1" width="50" height="100" />
            <Character name="2" resource="digit2" width="50" height="100" />
            <Character name="3" resource="digit3" width="50" height="100" />
            <Character name="4" resource="digit4" width="50" height="100" />
            <!-- ... -->
            <!-- Treat "12" specially, instead of a 1 followed by a 2-->
            <Word name="12" resource="digit12" width="80" height="100" />
        </BitmapFont>
    </BitmapFonts>

توجه کنید که چگونه می‌توان به توالی نویسه‌ها رفتار ویژه‌ای اختصاص داد. برای مثال، اگر «۱۲» قرار باشد با ۱ و ۲ به‌هم‌پیوسته نشان داده شود، این کار را می‌توان بااستفاده از عنصر Word انجام داد.

برای استفاده از قلم تعریف‌شده:

<DigitalClock x="125" y="120" width="200" height="50">
    <TimeText x="0" y="0" width="200" height="50" format="hh:mm">
        <BitmapFont family="myhandwriting" size="48" color="#FF00FF"/>
    </TimeText>
</DigitalClock>

جلوه‌های نوشتاری

«قالب صفحه ساعت» چندین جلوه نوشتاری ارائه می‌دهد که می‌توان آن‌ها را اعمال کرد، مثلاً OutGlow و Shadow. برای استفاده از این‌ها، آن‌ها را به‌عنوان عناصر فرعی عنصر Font اعمال کنید:

<Font family="pacifico" size="96" color="#e2a0ff">
    <OutGlow color="#e8ffb7" radius="30">Hello!</OutGlow>
</Font>

کار با الگوها

به‌جای نوشتار ثابت، ممکن است لازم باشد نوشتارتان را از منابع داده یا عبارت‌ها بسازید.

عنصر Template به شما امکان می‌دهد این کار را انجام دهید:

<Font family="pacifico" size="60" weight="BOLD" color="#ffffff">
    <Template>Day: %s<Parameter expression="[DAY_OF_WEEK_S]" /></Template>
</Font>

کار با منابع

اگر نوشتار ایستای شما به‌جای آن در منبعی تعریف شده است، مثلاً در res/values/strings.xml، می‌توانید به این صورت به آن ارجاع دهید:

<!-- greeting defined in res/values/strings.xml -->
<Font family="pacifico" size="60" weight="BOLD" color="#ffffff">greeting</Font>

این کار همچنین به شما امکان می‌دهد صفحه ساعتتان را بااستفاده از مشخص‌کننده‌های منبع مختلف بومی‌سازی کنید.

فاصله دستگیره

کار کردن با فاصله بین خطوط در XML می‌تواند چالش‌برانگیز باشد. فاصله‌های اضافی در اطراف نوشتار می‌تواند باعث مشکلات قالب‌بندی، مانند مرکز نادرست، شود یا مانع از این شود که برنامه شما منابع رشته Android را پیدا کند.

برای جلوگیری از این موقعیت‌ها، محتوای Font خود را در عنصر CDATA بپیچید:

<Font family="pacifico" size="60" weight="BOLD" color="#ffffff">
    <![CDATA[Hello]]>
</Font>

نوشتار چندخطی

برای ایجاد نوشتار چندخطی، از مشخصه maxLines در Text استفاده کنید:

<Text align="CENTER" maxLines="2">
    <Font family="pacifico" size="60" weight="BOLD" color="#ffffff">
        <![CDATA[Hello Wear OS world]]>
    </Font>
</Text>