更新:第二个解决方案比此解决方案更好。
您应该将floatingActionButton小部件放在构建器小部件中。下面的代码应该工作:
@override Widget build(BuildContext context) { return new Scaffold( floatingActionButton: new Builder(builder: (BuildContext context) { return new FloatingActionButton(onPressed: () { Scaffold .of(context) .showSnackBar(new SnackBar(content: new Text('Hello!'))); }); }), body: new Container( padding: new EdgeInsets.all(32.0), child: new Column( children: <Widget>[ new MySwitch( value: _switchValue, onChanged: (bool value) { if (value != _switchValue) { setState(() { _switchValue = value; }); } }, ) ], ), ), );


