Linhas com separadores
Parte da seção Listas e telas do Journey de Flutter da Coddy. Lição 8 de 33.
Uma lista longa fica mais fácil de ler com uma linha entre as linhas. Com um construtor, você não pode escrever os Dividers à mão, então há um segundo tipo de lista com construtor que os adiciona para você:
ListView.separated(
itemCount: songs.length,
itemBuilder: (context, index) {
return ListTile(title: Text(songs[index]));
},
separatorBuilder: (context, index) {
return const Divider();
},
)separatorBuilder é chamado para cada espaço entre duas linhas e retorna o widget que deve ficar ali. Uma lista com 15 linhas tem 14 separadores, e nunca há um depois da última linha.
O separador pode ser qualquer widget: um Divider ou um SizedBox para criar apenas um espaço.
Desafio
FácilAltere a lista de reprodução para um ListView.separated com um Divider entre cada par de músicas.
Experimente você mesmo
import 'package:flutter/material.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
final List<String> songs = [
'Morning Light',
'Paper Planes',
'City Rain',
'Slow River',
'Neon Nights',
'Golden Hour',
'Northern Wind',
'Blue Harbor',
'Quiet Storm',
'Summer Static',
'Echo Valley',
'Last Train',
'Silver Lines',
'Open Road',
'Starfall',
];
return MaterialApp(
debugShowCheckedModeBanner: false,
home: Scaffold(
appBar: AppBar(title: const Text('Playlist')),
body: ListView.builder(
itemCount: songs.length,
itemBuilder: (context, index) {
return ListTile(title: Text(songs[index]));
},
),
),
);
}
}
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Listas e telas
Pratique por conta própria: Compilador de Flutter online