En el caso de los relojes digitales, debes intentar usar DigitalClock siempre que sea posible. Para todos los demás textos o relojes que no se pueden representar con DigitalClock, PartText es el contenedor para la renderización basada en texto.
Según si deseas mostrar texto circular o normal, el elemento PartText debe contener un elemento Text o TextCircular.
Cómo trabajar con fuentes y fuentes de mapa de bits
Usar fuentes personalizadas permite que la cara de reloj se destaque con su propio estilo.
Existen dos formas de usar fuentes personalizadas, ambas dentro de los contenedores TimeText y PartText.
Especifica una fuente personalizada
familyen el elementoFont. Se admite una variedad de formatos comunes, que deben colocarse enres/font.Por ejemplo, si usas la fuente Pacifico de Google Fonts y colocas el recurso como res/font/pacifico.ttf, haz lo siguiente:
<PartText x="0" y="50" width="450" height="250"> <Text align="CENTER"> <Font family="pacifico" size="96">Hello!</Font> </Text> </PartText>
Como alternativa, define un
BitmapFontque proporcione imágenes de mapa de bits enres/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>
Observa cómo se pueden tratar de forma especial las secuencias de caracteres. Por ejemplo, si se quisiera representar el número "12" con un 1 y un 2 unidos, esto se podría lograr con un elemento Word.
Para usar la fuente definida, haz lo siguiente:
<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>
Efectos de texto
El Formato de Caras de Relojes proporciona varios efectos de texto que se pueden aplicar, como OutGlow y Shadow. Para usarlos, aplícalos como subelementos del elemento Font:
<Font family="pacifico" size="96" color="#e2a0ff"> <OutGlow color="#e8ffb7" radius="30">Hello!</OutGlow> </Font>
Cómo trabajar con plantillas
En lugar de texto estático, es posible que debas construir tu texto a partir de fuentes de datos o expresiones.
El elemento Template te permite hacer lo siguiente:
<Font family="pacifico" size="60" weight="BOLD" color="#ffffff"> <Template>Day: %s<Parameter expression="[DAY_OF_WEEK_S]" /></Template> </Font>
Cómo trabajar con recursos
Si el texto estático se define en un recurso, como en res/values/strings.xml, se puede hacer referencia a él de la siguiente manera:
<!-- greeting defined in res/values/strings.xml --> <Font family="pacifico" size="60" weight="BOLD" color="#ffffff">greeting</Font>
Esto también te permite localizar tu cara de reloj con diferentes calificadores de recursos.
Espacio entre manijas
Trabajar con el espaciado de texto en XML puede ser un desafío. El espacio adicional alrededor del texto puede causar problemas de formato, como un centrado incorrecto, o impedir que tu app encuentre recursos de cadenas de Android.
Para evitar estas situaciones, une el contenido de Font en un elemento CDATA:
<Font family="pacifico" size="60" weight="BOLD" color="#ffffff"> <![CDATA[Hello]]> </Font>
Texto de varias líneas
Para crear texto de varias líneas, usa el atributo maxLines en Text:
<Text align="CENTER" maxLines="2"> <Font family="pacifico" size="60" weight="BOLD" color="#ffffff"> <![CDATA[Hello Wear OS world]]> </Font> </Text>