Depois de configurar o projeto e adicionar uma classe que implementa o serviço de mostrador do relógio, você pode começar a criar o código para inicializar e exibir o mostrador do relógio personalizado.
Cada mostrador do relógio cria uma subclasse personalizada de um renderizador que implementa tudo o que é necessário para exibir esse mostrador.
O renderizador combina o
UserStyle
,
as informações de complicação do
ComplicationSlotsManager
,
o horário atual e outras informações de estado para
renderizar o mostrador do relógio, conforme mostrado neste exemplo:
class CustomCanvasRenderer(
private val context: Context,
surfaceHolder: SurfaceHolder,
watchState: WatchState,
private val complicationSlotsManager: ComplicationSlotsManager,
currentUserStyleRepository: CurrentUserStyleRepository,
canvasType: Int
) : Renderer.CanvasRenderer(
surfaceHolder = surfaceHolder,
currentUserStyleRepository = currentUserStyleRepository,
watchState = watchState,
canvasType = canvasType,
interactiveDrawModeUpdateDelayMillis = 16L
) {
override fun render(canvas: Canvas, bounds: Rect, zonedDateTime: ZonedDateTime) {
// Draw into the canvas
}
override fun renderHighlightLayer(canvas: Canvas, bounds: Rect, zonedDateTime: ZonedDateTime) {
// Draw into the canvas
}
}