Disegna un quadrante

Dopo aver configurato il progetto e aggiunto una classe che implementa il servizio di quadrante, puoi iniziare a scrivere il codice per inizializzare e disegnare il quadrante personalizzato.

Ogni quadrante crea una sottoclasse personalizzata di un renderer che implementa tutto il necessario per disegnare il quadrante.

Il renderer combina UserStyle, le informazioni sulle complicazioni di ComplicationSlotsManager, l'ora corrente e altre informazioni sullo stato per renderizzare il quadrante, come mostrato nell'esempio seguente:

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
    }
}