Untuk jam digital, Anda harus menggunakan DigitalClock
jika memungkinkan. Untuk semua
teks atau jam lain yang tidak dapat direpresentasikan menggunakan DigitalClock
,
PartText
adalah penampung untuk rendering berbasis teks.
Bergantung pada apakah Anda ingin menampilkan teks melingkar atau biasa, PartText
harus berisi salah satu elemen Text
atau TextCircular
.
Menggunakan font dan font bitmap
Menggunakan font kustom memungkinkan tampilan jam Anda tampil beda dengan gayanya sendiri.
Ada dua cara untuk menggunakan font kustom, baik dalam penampung TimeText
maupun
PartText
.
Tentukan font kustom
family
di elemenFont
. Rentang format umum didukung, yang harus ditempatkan dires/font
Misalnya, menggunakan font Pacifico dari Google Fonts, dan menempatkan aset sebagai res/font/pacifico.ttf:
<PartText x="0" y="100" width="450" height="250"> <Text align="CENTER"> <Font family="pacifico" size="96">Hello!</Font> </Text> </PartText>
Atau, tentukan
BitmapFont
yang menyediakan gambar bitmap dires/drawable
:<WatchFace width="450" height="450" clipShape="CIRCLE"> <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> <!-- ... -->
Perhatikan bagaimana urutan karakter dapat diberi perlakuan khusus. Misalnya,
jika "12" akan direpresentasikan dengan 1 dan 2 yang digabungkan, hal ini dapat dilakukan
menggunakan elemen Word
.
Untuk menggunakan font yang ditentukan:
<TimeText ... format="hh:mm">
<BitmapFont family="myhandwriting" size="48" color="#ff0000" />
</TimeText>
Efek teks
Format Tampilan Jam menyediakan beberapa efek teks yang dapat diterapkan, seperti
OutGlow
dan Shadow
. Untuk menggunakannya, terapkan sebagai subelemen
elemen Font
:
<Font family="pacifico" size="96" color="#e2a0ff">
<OutGlow color="#e8ffb7" radius="30">Hello!</OutGlow>
</Font>
Menggunakan template
Daripada teks statis, Anda mungkin perlu membuat teks dari sumber data atau ekspresi.
Elemen Template
memungkinkan Anda melakukan hal berikut:
<PartText x="100" y="150" width="300" height="120" >
<Text align="CENTER">
<Font family="pacifico" size="60" weight="BOLD" color="#ffffff">
<Template>Day: %s<Parameter expression="[DAY_OF_WEEK_S]" /></Template>
</Font>
</Text>
</PartText>
Menggunakan resource
Jika teks statis Anda ditentukan dalam resource, seperti dalam
res/values/strings.xml
, teks tersebut dapat direferensikan sebagai berikut:
<PartText x="100" y="150" width="300" height="120" >
<Text align="CENTER">
<!-- greeting defined in res/values/strings.xml -->
<Font family="pacifico" size="60" weight="BOLD" color="#ffffff">greeting</Font>
</Text>
</PartText>
Hal ini juga memungkinkan Anda melokalkan tampilan jam menggunakan penentu resource yang berbeda.
Menangani spasi
Mungkin ada beberapa tantangan saat menggunakan spasi dan teks:
<!-- greeting defined in res/values/strings.xml -->
<!-- Works correctly: -->
<Font family="pacifico" size="60" weight="BOLD" color="#ffffff">greeting</Font>
<!-- Does not render in the right place because of whitespace -->
<Font family="pacifico" size="60" weight="BOLD" color="#ffffff">
greeting
</Font>
Hal ini karena spasi penting dalam XML. Untuk menghindari situasi ini, gabungkan
konten Font
dalam elemen CDATA
:
<!-- Works correctly -->
<Font family="pacifico" size="60" weight="BOLD" color="#ffffff">
<![CDATA[greeting]]>
</Font>
Contoh lain dapat dilihat saat mencoba meratakan teks di tengah:
<!-- Does not render as expected - leading spaces are a problem -->
<PartText x="100" y="150" width="250" height="120" >
<Text align="CENTER">
<Font family="pacifico" size="60" weight="BOLD" color="#ffffff">
Hello
</Font>
</Text>
</PartText>
<!-- Works correctly -->
<PartText x="100" y="150" width="250" height="120" >
<Text align="CENTER">
<Font family="pacifico" size="60" weight="BOLD" color="#ffffff">
<![CDATA[Hello]]>
</Font>
</Text>
</PartText>
Teks multibaris
Untuk membuat teks multibaris, gunakan atribut maxLines
di Text
:
<PartText x="75" y="100" width="300" height="350" >
<Text align="CENTER" maxLines="2">
<Font family="pacifico" size="60" weight="BOLD" color="#ffffff">
<![CDATA[Hello Wear OS world]]>
</Font>
</Text>
</PartText>