根据颤动中的变量更改背景色

问题描述

使用Flutter,我想在“颜色”变量的值更改时更改应用程序的背景色。

 String color = "white";

@override
  Widget build(BuildContext context) {
    return Scaffold(
      backgroundColor: Colors.green,

我不知道如何将颜色设置为backgroundColor属性。

解决方法

要存储颜色值,可以使用Color类型数据:

Color myColor = Colors.white;

@override
  Widget build(BuildContext context) {
    return Scaffold(
      backgroundColor: myColor,

此后,您可以更改myColor属性,您的backgroundColor也将更改。

我希望这会有所帮助。

,
class AppColor {
      static const RED = "RED";
      static const GREEN = "GREEN";
      static const BLUE = "BLUE";
      static const DEFAULT = "DEFAULT";
    
      static const _colorMap = {
        RED: Colors.red,GREEN: Colors.green,BLUE: Colors.blue,DEFAULT: Colors.teal,};
    
      const AppColor._();
    
      static getColorFor(String color) => _colorMap[color.toUpperCase()] ?? _colorMap[DEFAULT];
    }
    
    class SO extends StatelessWidget {
      var color = 'red';
    
      @override
      Widget build(BuildContext context) {
        return Scaffold(
          backgroundColor: AppColor.getColorFor(color),appBar: AppBar(),);
      }
    }

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...