首页 > 解决方案 > Flutter 按主题更改颜色

问题描述

我将此添加到我的项目中。

这可行,但我想更改容器的颜色,例如,取决于选择的主题。我怎样才能做到这一点?

标签: flutter

解决方案


创建一个辅助方法getThemeColor如下:

Color getThemeColor({@required Color darkThemeColor,@required Color lightThemeColor}) { 
    return Theme.of(context).brightness == Brightness.dark ? darkThemeColor : lightThemeColor;
}

然后在任何你想设置颜色的地方使用它:

Container(
  color: getThemeColor(darkThemeColor: Colors.red, lightThemeColor: Colors.green),
),

推荐阅读