Skip to content

SelectBox ​

Interaction

Engine\Native\SelectBox est l'équivalent natif d'Engine\SelectBox — il n'y a pas de <select> HTML sur lequel se rabattre, donc taper ce champ dit à NativeRenderPocActivity d'afficher une vraie liste à choix unique via android.app.AlertDialog. Les options voyagent directement dans le meta de la zone de hit (clé options), si bien qu'aucun second aller-retour n'est nécessaire pour savoir quoi proposer. Un choix est suivi côté client exactement comme la valeur tapée de TextField : relu par son name depuis $_GET à la requête suivante, pas repoussé de façon synchrone.

Exemple ​

php
<?php

use Engine\Native\SelectBox;

$country = new SelectBox(
    name: 'country',
    options: ['bj' => 'Bénin', 'tg' => 'Togo', 'ci' => 'Côte d’Ivoire'],
    selected: 'bj',
    placeholder: 'Choisir un pays...',
);

Un champ affichant « Bénin » comme valeur sélectionnée ; un tap ouvre une boîte de dialogue native listant les trois pays.

Constructeur ​

ParamètreTypeDéfautDescription
namestring—Nom du champ, utilisé dans l'action select:{name}.
optionsarray<string, string>—Options sous forme valeur => libellé.
selectedstring''Valeur actuellement sélectionnée.
placeholderstring'Choisir...'Texte affiché quand rien n'est sélectionné.
heightfloat52.0Hauteur du champ.

À savoir. Toutes les options sont transmises en clair dans le meta de la zone de hit à chaque rendu — pour une liste très longue, cela alourdit chaque réponse ; il n'y a pas de mécanisme de recherche/pagination côté dialogue.

Voir aussi ​

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