J'ai utilisé les deux widgets Expanded
et Flexible
et ils semblent fonctionner de la même manière. Y a-t-il une différence entre les deux que j'ai manqués?
Expanded
n'est qu'un raccourci pour Flexible
En utilisant étendu de cette façon:
Expanded(
child: Foo(),
);
est strictement équivalent à:
Flexible(
fit: FlexFit.tight,
child: Foo(),
);
Vous souhaiterez peut-être utiliser Flexible
sur Expanded
lorsque vous voulez un autre fit
, utile dans certaines présentations réactives.
La différence entre FlexFit.tight
et FlexFit.loose
est que loose permettra à son enfant d’avoir une taille maximale tout en le contraignant à remplir l’espace disponible.
Élargi - il est flexible et ajusté
class Expanded extends Flexible {
const Expanded({
Key key,
int flex = 1,
@required Widget child,
}) : super(key: key, flex: flex, fit: FlexFit.tight, child: child);
}
Vous pouvez utiliser Flexible pour redimensionner les widgets en lignes et colonnes . Il est principalement utilisé pour ajuster l'espace des différents widgets enfants tout en conservant la relation avec leurs widgets parents.
Pendant ce temps, Expanded modifie les contraintes envoyées aux enfants de lignes et Colonnes; cela aide à remplir les espaces disponibles là-bas. Par conséquent, lorsque vous enveloppez votre enfant dans un widget développé, il remplit les espaces vides.
Fournir ces vidéos à partir de la chaîne YouTube officielle de Flutter uniquement pour aider les personnes susceptibles de le rechercher dans le futur à venir ...