Flutter 颤振-如何在自定义类小部件中更改变量

Flutter 颤振-如何在自定义类小部件中更改变量,flutter,dart,Flutter,Dart,我有一个非常简单的Test.dart自定义类小部件,我希望能够在main.drat中更改变量color的值并对其进行更新 @override _TestState createState() => _TestState(); } class _TestState extends State<Test> { var color; @override Widget build(BuildContext context) { return Scaffol

我有一个非常简单的
Test.dart
自定义类小部件,我希望能够在
main.drat
中更改变量
color
的值并对其进行更新

  @override
  _TestState createState() => _TestState();
}

class _TestState extends State<Test> {
  var color;
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Center(
        child: Container(
          color: color,
        ),
      ),
    );
  }
}
@覆盖
_TestState createState();
}
类_TestState扩展状态{
颜色变异;
@凌驾
小部件构建(构建上下文){
返回脚手架(
正文:中(
子:容器(
颜色:颜色,
),
),
);
}
}

您可以在小部件的构造函数中将值传递给颜色:

类测试扩展StatefulWidget{
最终颜色;
测试(该颜色);
@凌驾
_TestState createState();
}
类_TestState扩展状态{
@凌驾
小部件构建(构建上下文){
返回脚手架(
正文:中(
子:容器(
颜色:widget.color,
),
),
);
}
}
然后您可以像这样调用这个
Test
小部件:

Test(myColor);

Flatter针对重建小部件进行了优化,因此您无需单独设置颜色,只需使用新值重建小部件即可。

我收到一个错误:
错误:无法在初始值设定项中访问实例成员“小部件”。
@Tuqayoh,对不起。我编辑