Fixed
Mise en page
Engine\Native\Fixed marque les commandes de dessin et les zones de hit-test de son sous-arbre comme relatives à l'écran plutôt qu'au contenu défilable. Côté Android, NativeCanvasView.kt dessine d'abord le flux défilant translaté de -scrollY, puis rejoue tout ce qui a été peint entre Canvas::beginFixed() et endFixed() une seconde fois sans translation, de sorte que ce sous-arbre reste épinglé pendant que le corps défile en dessous. C'est le primitif que Scaffold utilise en interne pour offrir ce que Flutter obtient gratuitement d'un AppBar/BottomNavigationBar vivant hors du corps défilable — les points d'appel ne devraient normalement pas l'utiliser directement.
Exemple
<?php
use Engine\Native\Fixed;
use Engine\Native\Container;
use Engine\Color;
$header = new Fixed(
new Container(height: 56.0, background: Color::white(), elevation: 1.0),
);La barre blanche de 56px de haut reste visible en haut de l'écran quel que soit le défilement du contenu qu'elle surplombe, plutôt que de défiler avec lui.
Constructeur
| Paramètre | Type | Défaut | Description |
|---|---|---|---|
| child | Widget | — | Sous-arbre à peindre hors du décalage de scroll. |
À savoir.
Fixedne change rien au layout (il délègue tel quel les contraintes à l'enfant) : seul le comportement de peinture change, viacanvas->beginFixed()/endFixed(). C'est la brique de bas niveau derrièreScaffold, pas un widget à composer librement dans une mise en page ordinaire.