Đối với đồng hồ kỹ thuật số, bạn nên sử dụng DigitalClock nếu có thể. Đối với tất cả văn bản hoặc đồng hồ khác không thể biểu thị bằng DigitalClock, PartText là vùng chứa để hiển thị dựa trên văn bản.
Tuỳ thuộc vào việc bạn muốn hiển thị văn bản dạng tròn hay văn bản thông thường, PartText phải chứa một trong hai phần tử Text hoặc TextCircular.
Làm việc với phông chữ và phông chữ bitmap
Việc sử dụng phông chữ tuỳ chỉnh sẽ giúp mặt đồng hồ của bạn nổi bật với phong cách riêng.
Có hai cách để sử dụng phông chữ tuỳ chỉnh, cả trong vùng chứa TimeText và PartText.
Chỉ định một
familyphông chữ tuỳ chỉnh trong phần tửFont. Một loạt các định dạng phổ biến được hỗ trợ, phải được đặt trongres/fontVí dụ: sử dụng phông chữ Pacifico từ Google Fonts và đặt thành phần này làm 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>
Ngoài ra, hãy xác định một
BitmapFontcung cấp hình ảnh bitmap trongres/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>
Lưu ý cách xử lý đặc biệt các chuỗi ký tự. Ví dụ: nếu "12" được biểu thị bằng 1 và 2 được kết hợp, thì bạn có thể đạt được điều này bằng cách sử dụng phần tử Word.
Cách sử dụng phông chữ đã xác định:
<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>
Hiệu ứng cho văn bản
Định dạng mặt đồng hồ cung cấp một số hiệu ứng văn bản mà bạn có thể áp dụng, chẳng hạn như OutGlow và Shadow. Để sử dụng các phần tử này, hãy áp dụng chúng làm phần tử con của phần tử Font:
<Font family="pacifico" size="96" color="#e2a0ff"> <OutGlow color="#e8ffb7" radius="30">Hello!</OutGlow> </Font>
Làm việc với mẫu
Thay vì văn bản tĩnh, bạn có thể cần tạo văn bản từ các nguồn dữ liệu hoặc biểu thức.
Phần tử Template cho phép bạn làm việc này:
<Font family="pacifico" size="60" weight="BOLD" color="#ffffff"> <Template>Day: %s<Parameter expression="[DAY_OF_WEEK_S]" /></Template> </Font>
Làm việc với các tài nguyên
Nếu văn bản tĩnh của bạn được xác định trong một tài nguyên, chẳng hạn như trong res/values/strings.xml, thì bạn có thể tham chiếu văn bản đó như sau:
<!-- greeting defined in res/values/strings.xml --> <Font family="pacifico" size="60" weight="BOLD" color="#ffffff">greeting</Font>
Điều này cũng cho phép bạn bản địa hoá mặt đồng hồ bằng cách sử dụng các trình đủ tiêu chuẩn tài nguyên khác nhau.
Khoảng cách giữa các điểm điều khiển
Việc xử lý khoảng cách văn bản trong XML có thể gặp nhiều khó khăn. Khoảng cách thừa xung quanh văn bản có thể gây ra các vấn đề về định dạng, chẳng hạn như căn giữa không chính xác hoặc ngăn ứng dụng của bạn tìm thấy các tài nguyên chuỗi Android.
Để tránh những trường hợp này, hãy gói nội dung Font trong một phần tử CDATA:
<Font family="pacifico" size="60" weight="BOLD" color="#ffffff"> <![CDATA[Hello]]> </Font>
Văn bản nhiều dòng
Để tạo văn bản nhiều dòng, hãy sử dụng thuộc tính maxLines trên Text:
<Text align="CENTER" maxLines="2"> <Font family="pacifico" size="60" weight="BOLD" color="#ffffff"> <![CDATA[Hello Wear OS world]]> </Font> </Text>