Il convertit essentiellement une fonction qui construit un widget en widget.
Wo où vous avez besoin de passer un widget mais que vous n'avez qu'une fonction qui renvoie un widget, vous pouvez utiliser le widget Builder
.
bool bar;
Widget createFooOrBarWidget() {
if(bar) {
return BarWidget();
}
return FooWidget();
}
Widget build(BuildContext context) =>
Container(child: Builder((context) => createFooOrBarWidget()));
vous pouvez également utiliser
Widget build(BuildContext context) =>
Container(child: createFooOrBarWidget());
mais le premier retarde la création du widget Foo ou Bar jusqu'à ce que build
soit réellement appelé.