我想从主题数据更改 Flutter 应用程序的主色,但它不适用于 AppBar。
我开始使用primarySwatch,但在得知primarySwatch即将关闭后,我使用了ColorScheme.fromSeed(),但这也不起作用。这是主应用程序的代码:
import 'package:flutter/material.dart';
import 'package:to_do/home_page.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
home: HomePage(),
theme: ThemeData(
colorScheme: ColorScheme.fromSeed(seedColor: Colors.yellow),
),
);
}
}
HomePage()应用程序的代码如下:
import 'package:flutter/material.dart';
class HomePage extends StatefulWidget {
const HomePage({super.key});
@override
State<HomePage> createState() => _HomePageState();
}
class _HomePageState extends State<HomePage> {
@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: Colors.yellow[200],
appBar: AppBar(),
);
}
}
我没有给应用程序栏手动颜色,因为我希望它会根据主题自动更改,但这不起作用,它保持白色。
如果有人有任何想法,我将不胜感激。
谢谢。
静态ThemeData buildLightTheme() { 返回主题数据( 应用程序栏主题:_buildAppBarTheme(), ); }