رسم خلفية شاشة ساعة

بعد ضبط إعدادات مشروعك وإضافة فئة تنفِّذ خدمة خلفية شاشة الساعة، يمكنك بدء كتابة الرمز البرمجي لإعداد خلفية شاشة الساعة المخصّصة ورسم عناصرها.

تنشئ كل خلفية من خلفيات شاشة الساعة فئة فرعية مخصّصة من العارض الذي ينفّذ كل ما يلزم لرسم خلفية شاشة الساعة.

يجمع أداة الربط بين UserStyle، ومعلومات الإضافة من ComplicationSlotsManager، والوقت الحالي، ومعلومات الحالة الأخرى لأجل عرض خلفية شاشة الساعة، كما هو موضّح في المثال التالي:

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