【发布时间】:2021-12-27 14:52:02
【问题描述】:
我想打破这个方法并在帮助类中公开它,但是在尝试将上下文传递给它时遇到了这个错误?它需要两个必需的上下文和BuildContext,但我不知道如何实现?我得到这个错误。两个上下文参数似乎也有问题:
“需要 2 个位置参数,但找到 0 个。尝试添加缺少的参数”
或者如果我输入第一个上下文是:
“需要 1 个位置参数,但找到 0 个。尝试添加缺少的参数”
私有方法:
_showDialog() {
showDialog(
context: context,
builder: (BuildContext context) {
return AlertDialog(
title: Text('Title'),
content: Text('Body'),
actions: <Widget>[
OutlinedButton(
child: Text('Close'),
onPressed: () {
Navigator.of(context).pop();
},
),
],
);
},
);
}
公共方法(带有两个上下文参数):
class _LegendScreenState extends State<LegendScreen> {
showDialog(context, BuildContext context) {
showDialog(
context: context,
builder: (BuildContext context) {
return AlertDialog(
title: Text('Title'),
content: Text('Body'),
actions: <Widget>[
OutlinedButton(
child: Text('Close'),
onPressed: () {
Navigator.of(context).pop();
},
),
],
);
},
);
}
}
【问题讨论】:
标签: flutter dart private public