我试图在 Flutter 中的 onPressed 上调用一个函数。
我试过了
onPressed: (){
_showDialog;
},
Run Code Online (Sandbox Code Playgroud)
和
onPressed: _showDialog,
Run Code Online (Sandbox Code Playgroud)
和
onPressed: () => _showDialog,
Run Code Online (Sandbox Code Playgroud)
这是我的职能。
void _showDialog() {
showDialog(
context: context,
builder: (BuildContext context) {
return AlertDialog(
title: Text("Title"),
content: Text("Body"),
actions: <Widget>[
FlatButton(
child: Text("Close"),
onPressed: () {
Navigator.of(context).pop();
},
),
],
);
},
);
}
Run Code Online (Sandbox Code Playgroud)
我不断收到“无效的常数值”。
编辑:
这是我调用 onPressed 的地方:
secondary: const IconButton(
icon: Icon(Icons.domain),
onPressed: (){
_showDialog();
},
),
Run Code Online (Sandbox Code Playgroud)
您应该尝试以下方式:
onPressed: (){
_showDialog();
},
Run Code Online (Sandbox Code Playgroud)
或者
onPressed: _showDialog,
Run Code Online (Sandbox Code Playgroud)
或者
onPressed: () => _showDialog(),
Run Code Online (Sandbox Code Playgroud)
更新
简单修复:删除const关键字
secondary: IconButton(
icon: Icon(Icons.domain),
onPressed: (){
_showDialog();
},
),
Run Code Online (Sandbox Code Playgroud)
小智 6
您需要const
像这样检查并删除容器(小部件)
child: TextFormField(
decoration: **const** InputDecoration(
prefixIcon: Icon(Icons.person),
suffixIcon: IconButton(
icon: Icon(Icons.remove_red_eye),
onPressed: showPassword,
),
labelText: "Name *",
hintText: "Your Github account username",
),
)
Run Code Online (Sandbox Code Playgroud)
child: TextFormField(
decoration:InputDecoration(
...
)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2121 次 |
| 最近记录: |