【发布时间】:2020-10-26 11:10:03
【问题描述】:
我想将除LicensePage 之外的每个屏幕的背景颜色设置为某种颜色,因此我通过MaterialApp 的theme 参数指定了scaffoldBackbroundColor,如下所示。
class App extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
theme: ThemeData(scaffoldBackgroundColor: Colors.blue.shade200),
home: HomeScreen(),
);
}
}
这也改变了许可页面的背景颜色,所以为了将它改回白色,我尝试覆盖scaffoldBackbroundColor,但没有成功。
class HomeScreen extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
body: Theme(
data: Theme.of(context).copyWith(scaffoldBackgroundColor: Colors.white),
child: Center(
child: RaisedButton(
child: const Text('Show licenses'),
onPressed: () => showLicensePage(context: context),
),
),
),
);
}
}
我该怎么做?
【问题讨论】:
标签: flutter flutter-theme