Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
⊗flPmSyTh 107 of 125 menu
◀ ▶

Тема MaterialApp через ThemeData в Flutter

Цвета кнопок, фон AppBar и стили текста по умолчанию собирают в ThemeData и передают в MaterialApp(theme: ...). Потомки Material подхватывают эти настройки автоматически.

Минимальный набор для учебника - указать colorScheme или primarySwatch в старых примерах; в Material 3 чаще работают с ColorScheme. Здесь зададим явный ThemeData с заголовком приложения и включённым useMaterial3: true:

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( title: 'Theme demo', theme: ThemeData( useMaterial3: true, colorScheme: ColorScheme.fromSeed(seedColor: Colors.teal), appBarTheme: const AppBarTheme( centerTitle: true, ), ), home: const ThemeHomePage(), ); } } class ThemeHomePage extends StatelessWidget { const ThemeHomePage({super.key}); @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar(title: const Text('Theme')), body: Center( child: ElevatedButton( onPressed: () {}, child: const Text('Themed button'), ), ), ); } }

Задайте ThemeData с семенем Colors.deepPurple и floatingActionButtonTheme, где backgroundColor - Colors.amber. Проверьте FAB на экране.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить