Navigator.push()的类型无法签名为onPressed

时间:2018-04-04 10:54:08

标签: dart flutter

我正在浏览颤动的文档和示例,我陷入了路由。 这是文档https://docs.flutter.io/flutter/widgets/Navigator-class.html 它告诉我可以使用功能按钮来导航Navigator

onPressed: (context) {
  Navigator.pop(context);
}

但我的ide(vs代码)和调试器并不认为它是可能的。我试图这样做时会显示错误。

[dart] The argument type '(dynamic) → Null' can't be assigned to the parameter type '() → void'.

构建也失败,异常

setState() or markNeedsBuild() called during build.
This Overlay widget cannot be marked as needing to build because the framewo…

不太清楚这意味着什么...... 有什么建议吗?

2 个答案:

答案 0 :(得分:1)

不要将context传递给onPressed,因为它是一个无效回调,所以它不会返回任何内容。仅用它来执行逻辑。

答案 1 :(得分:1)

如果在(Y - Ymin) = (X - Xmin)/(Xmax - Xmin)*(Ymax - Ymin) = = (Ymax * (X - Xmin) - Ymin * (X-Xmin))/(Xmax - Xmin) Y = (Ymax * (X - Xmin) - Ymin * (X - Xmin))/(Xmax - Xmin) + Ymin = = (Ymax * (X - Xmin) + Ymin * (Xmin - X) + Ymin * (Xmax - Xmin))/(Xmax - Xmin) = = (Ymax * (X - Xmin) + Ymin * (Xmax - X))/(Xmax - Xmin) 的范围内创建了回调,则无需将context传递给onPressed回调,context在回调中可用可用的:

context