Spacer écarte les éléments
Fait partie de la section Des mises en page adaptées du Journey Flutter de Coddy. Leçon 4 sur 30.
Une barre supérieure comporte souvent un logo à gauche et des liens à droite. Un Spacer fait cela : c’est un widget vide qui occupe tout l’espace restant sur la ligne et pousse tout ce qui vient après à l’autre extrémité.
Row(
children: [
const Text('Logo'),
const Spacer(),
const Text('Cart'),
],
)Le Spacer se place exactement là où doit se trouver l’espace. Les widgets qui le précèdent restent à gauche, ceux qui le suivent se déplacent vers la droite, et l’espace entre les voisins du même côté reste tel que vous l’avez défini.
mainAxisAlignment: MainAxisAlignment.spaceBetween répartit plutôt tous les enfants. Utilisez un Spacer lorsqu’un seul espace doit s’agrandir.
Défi
FacileGarde Coddy à gauche et pousse Help et Log in jusqu’au bord droit, en les espaçant toujours de 16 pixels.
Essayez vous-même
import 'package:flutter/material.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
home: Scaffold(
body: Padding(
padding: const EdgeInsets.fromLTRB(16, 48, 16, 16),
child: Column(
children: [
Row(
children: [
const Text(
'Coddy',
style: TextStyle(fontSize: 20, fontWeight: FontWeight.bold),
),
const Text('Help'),
const SizedBox(width: 16),
const Text('Log in'),
],
),
],
),
),
),
);
}
}
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Des mises en page adaptées
1Partager une ligne
Expanded remplit la lignePartager l’espace avec flexFlexible épouse son enfantSpacer écarte les éléments4Tailles et points de rupture
Pleine largeur : double.infinityUne largeur maximaleTaille de l’écran : MediaQueryPoints de rupture de LayoutBuilder2L’erreur de débordement
L’erreur de débordementCorrection du débordement : agrandirCorrection du débordement : faire défilerCorrection du débordement : renvoyer à la ligneEspacement à l’intérieur d’un renvoi à la ligne5Énumérations et switch
Énumérations pour les types d’écranUtiliser switch avec une énumérationExpressions switchEntraînez-vous par vous-même : Compilateur Flutter en ligne