Lottie
Affichage riche
Engine\Native\Lottie est l'équivalent natif d'Engine\LottieView : une vraie com.airbnb.android.lottie.LottieAnimationView superposée au rectangle de ce widget, et non une reproduction image par image faite à la main sur un Canvas — l'intérêt même de Lottie, une boucle d'animation continue, n'a pas d'équivalent dans un pipeline où PHP calcule une seule image fixe par requête. NativeCanvasView.kt réconcilie cette superposition à chaque rendu (voir Canvas::lottieRegion()), donc elle joue en boucle en continu au fil des taps/scrolls, comme dans n'importe quelle autre application native, pas seulement une fois par chargement d'écran.
Exemple
<?php
use Engine\Native\Lottie;
$success = new Lottie(
url: 'assets/lottie/success-check.json',
width: 160.0,
height: 160.0,
loop: false,
autoplay: true,
);Cet exemple superpose une animation Lottie bundlée dans l'application (chemin ne commençant pas par http), jouée une seule fois au chargement de l'écran.
Constructeur
| Paramètre | Type | Défaut | Description |
|---|---|---|---|
| url | string | — | URL https:// distante ou chemin d'asset sous assets/lottie/ bundlé avec l'app. |
| width | float | — | Largeur de la région superposée. |
| height | float | — | Hauteur de la région superposée. |
| loop | bool | true | Rejoue l'animation en boucle. |
| autoplay | bool | true | Démarre l'animation automatiquement sans attendre d'interaction. |
| key | ?string | null | Identifiant de région pour la réconciliation ; par défaut, $url est utilisée comme clé. |
À savoir.
NativeRenderPocActivitydistingue une URL distante d'un asset bundlé simplement en vérifiant si$urlcommence par"http"— pas de paramètre séparé pour forcer l'un ou l'autre mode.