Skip to content

SizedBox ​

Mise en page

Engine\Native\SizedBox force une taille fixe (largeur, hauteur) quel que soit le contenu. Utilisé sans enfant, c'est un espaceur pur (par exemple entre deux éléments d'un Flex) ; utilisé avec un enfant, il l'enveloppe et lui impose une contrainte stricte à cette taille exacte via Constraints::tight(), quelle que soit la taille que l'enfant aurait naturellement choisie.

Exemple ​

php
<?php

use Engine\Native\SizedBox;
use Engine\Native\Flex;
use Engine\Native\Container;
use Engine\Native\Axis;
use Engine\Color;

$row = new Flex(Axis::HORIZONTAL, [
    new Container(width: 40.0, height: 40.0, background: Color::blue(500)),
    new SizedBox(16.0, 0.0),
    new Container(width: 40.0, height: 40.0, background: Color::red(500)),
]);

Un SizedBox sans enfant de 16px de large et 0 de haut sert d'espaceur horizontal fixe entre deux carrés dans une ligne.

Constructeur ​

ParamètreTypeDéfautDescription
widthfloat—Largeur imposée.
heightfloat—Hauteur imposée.
child?WidgetnullEnfant optionnel, contraint strictement à (width, height).

À savoir. La taille renvoyée au parent est toujours (width, height) contrainte par les bornes du parent (constraints->constrain(...)) — un SizedBox ne s'adapte jamais à son enfant, seul l'enfant s'adapte à lui.

Voir aussi ​

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