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
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ètre | Type | Défaut | Description |
|---|---|---|---|
| name | string | — | Nom du champ, utilisé dans l'action select:{name}. |
| options | array<string, string> | — | Options sous forme valeur => libellé. |
| selected | string | '' | Valeur actuellement sélectionnée. |
| placeholder | string | 'Choisir...' | Texte affiché quand rien n'est sélectionné. |
| height | float | 52.0 | Hauteur du champ. |
À savoir. Toutes les options sont transmises en clair dans le
metade 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.