繁体   English   中英

如何在将 flutter 升级为 Flutter 2.0.4 后提取具有 onPressed 方法的小部件

[英]how to extract a widget that has an onPressed method after upgrading flutter to be Flutter 2.0.4

过去当我用来提取具有按钮和 onPressed 方法的小部件时

我曾经用具有Function 数据类型的变量替换onPressed 方法采用的回调 function

但是现在当我尝试在将flutter 版本升级到 2.0.4后提取一个名为RoundedButton的小部件时,这是 flutter 的最新稳定版本。

它给了我这个错误:

**The argument type 'Function' can't be assigned to the parameter type 'void Function()?'.**

这是onPressed下带有红线的代码onPressed: onPressed,代码行:

class RoundedButton extends StatelessWidget {
  final String title;
  final Color color;
  final Function onPressed;

  RoundedButton(
      {required this.onPressed, required this.color, required this.title});

  @override
  Widget build(BuildContext context) {
    return Padding(
      padding: EdgeInsets.symmetric(vertical: 16.0),
      child: Material(
        color: color,
        borderRadius: BorderRadius.all(Radius.circular(30.0)),
        elevation: 5.0,
        child: MaterialButton(
          onPressed: onPressed,
          minWidth: 200.0,
          height: 42.0,
          child: Text(
            title,
            style: TextStyle(color: Colors.white),
          ),
        ),
      ),
    );
  }
}

而不是它的旧类型:`

Function

我弄清楚了 flutter 2.0.4 中使用的 onPressed 方法的类型

这是`

无效回调?

导入**dart:io**

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM