Correggere l’overflow: andare a capo
Fa parte della sezione Layout adattabili del percorso Flutter di Coddy. Lezione 8 di 30.
Alcune righe contengono elementi che dovrebbero scorrere come le parole in una frase: tag, filtri, chip. Quando sono troppi per una sola riga, un Row deborda a destra.
Wrap usa lo stesso elenco di children: e, quando l'elemento successivo non entra nella riga, ne inizia una nuova sotto:
Wrap(
children: [
for (final tag in tags) Text(tag),
],
)Questa è la terza soluzione per un overflow. Usa Expanded quando un elemento deve restringersi, una vista scorrevole quando la pagina è più lunga dello schermo e Wrap quando gli elementi devono passare alla riga successiva.
Un Wrap mantiene ogni elemento alla dimensione che richiede. Non li comprime mai: li sposta soltanto in basso.
Sfida
FacileI tag traboccano a destra. Fai in modo che vadano a capo tutte le volte necessarie, come le parole in un paragrafo.
Provalo tu
import 'package:flutter/material.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
final tags = ['Dart', 'Flutter', 'Mobile', 'Design', 'Games', 'Web'];
return MaterialApp(
debugShowCheckedModeBanner: false,
home: Scaffold(
appBar: AppBar(title: const Text('Interests')),
body: Padding(
padding: const EdgeInsets.all(16),
child: Row(
children: [
for (final tag in tags)
Container(
width: 110,
height: 40,
decoration: BoxDecoration(
color: Colors.purple.shade100,
borderRadius: BorderRadius.circular(20),
),
child: Center(child: Text(tag)),
),
],
),
),
),
);
}
}
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Layout adattabili
1Condividere una riga
Expanded riempie la rigaCondividere lo spazio con flexFlexible si adatta al suo elemento figlioSpacer tiene gli elementi separati2L’errore di overflow
L’errore di overflowCorreggere l’overflow: espandereCorreggere l’overflow: scorrereCorreggere l’overflow: andare a capoSpaziatura all’interno di un contenitore a capoEsercitati da solo: Compilatore Flutter online