Skip to content

Spinner ​

Progression & retour visuel

Engine\Native\Spinner est l'équivalent natif du CircularProgressIndicator() indéterminé de Flutter (sans value) : contrairement à CircularProgress, il ne porte aucun pourcentage — la commande Canvas::spinner() ne transporte aucun angle de rotation. C'est NativeCanvasView.kt qui calcule la rotation à partir de sa propre horloge, image par image, via un petit ValueAnimator qui tourne tant qu'une commande "spinner" est présente à l'écran — la seule animation du moteur qui continue sans qu'aucun nouveau rendu ne soit demandé.

Exemple ​

php
<?php

use Engine\Native\Spinner;
use Engine\Color;

$spinner = new Spinner(
    diameter: 32.0,
    color: Color::indigo(600),
);

Un rond de 32px tourne indéfiniment côté client en indigo sur une piste grise par défaut, typiquement utilisé comme état $loading d'un Async.

Constructeur ​

ParamètreTypeDéfautDescription
diameterfloat32.0Diamètre du carré occupé par le spinner.
color?Colornull → Tokens::ink()Couleur de l'arc animé.
trackColor?Colornull → Tokens::surfaceMuted()Couleur de la piste statique en arrière-plan.

À savoir. L'épaisseur du trait se déduit de diameter / 12 (minimum 2px) — il n'y a pas de paramètre strokeWidth exposé, contrairement à CircularProgress qui utilise un ratio différent (/ 16).

Voir aussi ​

PhpNitro est un produit FINANFA TECH — Publié sous licence MIT.