首页 > 解决方案 > On Pressed for FloatingActionButton 显示在初始化程序中只能访问静态成员

问题描述

如果我在下面的类中将 FloatingActionButton 初始化为“incrementWidgetButton”

Widget incrementWidgetButton = FloatingActionButton(
    onPressed: _incrementCounter,// why this error, only static member can be accessed
    tooltip: 'Increment',
    child: Icon(Icons.add),
  );

然后在我的列小部件中调用该按钮小部件,如下所示

    floatingActionButton: incrementWidgetButton

代码错误图片

标签: flutterdartflutter-layout

解决方案


您收到该错误的原因only static member can be accessed是,当使用所有属性初始化类时,它不知道该方法_incrementCounter

您可以通过创建一个返回您的函数来解决此问题FloatingActionButton

Widget incrementWidgetButton() => FloatingActionButton(
    onPressed: _incrementCounter,
    tooltip: 'Increment',
    child: Icon(Icons.add),
  );

之后,您在您的应用程序中添加它:

floatingActionButton: incrementWidgetButton()

推荐阅读