未定义命名参数“child”

时间:2021-03-18 08:22:37

标签: flutter

showDialog(
  context: context,
  barrierDismissible: false,
  child: AlertDialog( // this line error
    shape: defaultCardBorder(),
    title: Row(
      children: [
        _icon,
        SizedBox(width: 10),
        Expanded(child: Text(_title, style: TextStyle(fontSize: 22)))
      ],
    ),
    content: Text(
      message,
      style: TextStyle(fontSize: 18),
    ),
    actions: [
      /// Negative button
      negativeAction == null
          ? Container(width: 0, height: 0)
          : FlatButton(
              onPressed: negativeAction,
              child: Text(negativeText ?? "CANCEL",
                  style: TextStyle(fontSize: 18, color: Colors.grey))),

      /// Positive button
      FlatButton(
          onPressed: positiveAction ?? () => Navigator.of(context).pop(),
          child: Text(positiveText ?? "OK",
              style: _textStyle)),
    ],
  ));

>如何在flutter中解决这个问题 子线错误。错误是未定义命名参数“child”。 未定义命名参数“child”。 尝试将名称更正为现有命名参数的名称,或使用

定义命名参数

1 个答案:

答案 0 :(得分:2)

我猜你用的是 Flutter 2.0。由于此更新 AlertDialog 不再有子属性。相反,您必须声明一个 builder

showDialog(
          context: context,
          barrierDismissible: false,
          builder: (BuildContext context) => AlertDialog(
            title: Text('MyTitle'),
            content: Container(),
          ),
        );