【问题标题】:how to set whole app background color in flutter如何在颤动中设置整个应用程序的背景颜色
【发布时间】:2020-08-03 22:25:19
【问题描述】:

有没有办法在颤动中设置整个应用程序的背景颜色。例如,我想在所有屏幕上使用白色背景。所以我做的第一件事是手动为所有屏幕设置背景颜色。但我认为它矫枉过正。我正在寻找实现它的捷径。

我尝试了下面的代码,但无法实现我想要的。

  @override
  Widget build(BuildContext context) {
    return BlocProvider<SplashBloc>(
      bloc: splashBloc,
      child: MaterialApp(
        theme: new ThemeData(scaffoldBackgroundColor: Colors.white),
        home: Splash(),
      ),
    );
  }
}

【问题讨论】:

  • 你已经完全做到了。您只需在 main.dart 文件中执行此操作。上面的代码是来自您的main.dart 文件吗?
  • @ByteMe 是的。它在 main.dart 中
  • 删除backgroundColor: Color.fromRGBO(254, 248, 248, 1),,整个应用将沿用您在ThemeData中设置的应用背景颜色
  • 无效。我已经更新了代码块。 @ByteMe
  • 快速提问,您的代码是否为您应用中的每个页面返回一个Scaffold 小部件?

标签: flutter


【解决方案1】:

您可以使用 MaterialApp Widget 中的主题来为整个应用设置主题颜色,如下所示:

MaterialApp(
        theme: ThemeData(
          primaryIconTheme: IconThemeData(color: Colors.white),
          primaryColor: Color.fromRGBO(254, 248, 248, 1),
          appBarTheme: AppBarTheme(
            color: <color_of_choice>,
          ),
        ),

您的 backgroundColor 将采用上面的主要颜色。

阅读所有相关信息here

【讨论】:

  • 它不工作。我已经更新了我分享的有问题的代码块
  • 试过用 backgroundColor 代替 ScaffoldBackgroundColor 吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-10-06
  • 1970-01-01
  • 2019-04-30
  • 2021-03-31
  • 2020-09-28
  • 2020-04-29
  • 2017-07-07
相关资源
最近更新 更多