Skip to content

PageView ​

Listes & défilement

Équivalent natif d'Engine\PageView : les pages changent via un tap sur des chevrons prev/next entourant des pastilles indicatrices, plutôt que par un geste de swipe horizontal. NativeCanvasView.kt gère un unique défilement vertical plein écran ; router un vrai geste de swipe horizontal imbriqué serait un travail de routage de gestes distinct, non couvert ici. $onPageAction (le champ fieldName) reçoit l'index de page cible via toggle:{fieldName} avec un méta next.

Exemple ​

php
<?php

use Engine\Native\PageView;
use Engine\Native\Center;
use Engine\Native\Text;
use Engine\Native\Tokens;

$pages = [
    new Center(new Text('Bienvenue', Tokens::TEXT_TITLE, Tokens::ink()->toHex())),
    new Center(new Text('Étape 2', Tokens::TEXT_TITLE, Tokens::ink()->toHex())),
    new Center(new Text('Terminé', Tokens::TEXT_TITLE, Tokens::ink()->toHex())),
];

$view = new PageView(
    pages: $pages,
    currentPage: (int) ($_GET['onboarding_page'] ?? 0),
    fieldName: 'onboarding_page',
    height: 96.0,
);

Un carrousel de 3 pages ; le tap sur un chevron déclenche toggle:onboarding_page avec l'index suivant/précédent, que l'écran doit relire depuis $_GET['onboarding_page'].

Constructeur ​

ParamètreTypeDéfautDescription
pagesarray<int, Widget>—Liste des pages du carrousel.
currentPageint—Index de la page affichée ; automatiquement borné entre 0 et count($pages) - 1.
fieldNamestring—Nom de champ utilisé pour construire l'action toggle:{fieldName} des chevrons.
heightfloat96.0Hauteur de la zone de contenu de page (hors ligne de navigation).

À savoir. Si pages est vide, la page affichée retombe sur une SizedBox(0, 0) ; les chevrons restent présents mais leur méta next reste bornée sur l'unique index 0.

Voir aussi ​

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