首页 > 解决方案 > 将返回未来的函数传递给小部件

问题描述

我想向我的小部件传递一个返回未来的函数:

class CircularButtonWithIcon extends StatefulWidget {
  CircularButtonWithIcon(
      {Key key,
      @required this.onPress,
      this.activeStatus})
      : super(key: key);
  final Function activeStatus;

class _CircularButtonWithIconState extends State<CircularButtonWithIcon> {
  bool active;

  @override
  void initState() {
    super.initState();
    widget.activeStatus.then(...);
  }

然而 Dart 的类Function没有办法指定函数的返回类型。

有可能做这样的事情吗?

标签: flutterdart

解决方案


您可以在前面添加返回类型Function

IE

class CircularButtonWithIcon extends StatefulWidget {
  Future<void> Function() activeStatus;
  CircularButtonWithIcon({Key key, @required this.onPress, this.activeStatus,}) : super(key: key);
}

推荐阅读