Material 3 liefert ein Theme mit Farben und Schriften und fertige Bausteine wie Card.
Theme.of(context).colorScheme: Farben statt Color(0xFF…)Theme.of(context).textTheme: Schriftgrößen statt fontSize: …Card: Fläche mit Hintergrund und abgerundeten Eckenfinal colorScheme = Theme.of(context).colorScheme;
final textTheme = Theme.of(context).textTheme;
return Card(
color: colorScheme.primaryContainer,
child: Padding(
padding: const EdgeInsets.all(24),
child: Text(city.name, style: textTheme.headlineMedium), // in der Column
),
);Weil Farben und Schriften aus dem Theme kommen, braucht der Dark Mode nur ein zweites Theme.
MaterialApp(
theme: ThemeData(colorScheme: ColorScheme.fromSeed(seedColor: Colors.blue)),
darkTheme: ThemeData(
colorScheme: ColorScheme.fromSeed(
seedColor: Colors.blue,
brightness: Brightness.dark,
),
),
themeMode: ThemeMode.system,
)