【发布时间】:2021-03-06 09:02:23
【问题描述】:
我开发了一个应用程序,每个操作都有几个按钮,并且为了有一个更有序的代码,我编写了一个函数来拥有一个按钮:
Widget addButton(String msg,Function f){
return Padding(
padding: EdgeInsets.all(3),
child: MaterialButton(
minWidth: 40,
padding: EdgeInsets.all(10),
height: double.maxFinite,
color: Colors.blue,
//icon: Icons.add,
child: Text('${msg}',
style: TextStyle(fontSize: 16.0, color: Colors.white)),
onPressed: () {
f;
},
),
);
}
此函数接收一个显示在按钮中的字符串和一个在按下按钮时将执行的函数。
当用户在一个textField(tipoParc.text)中写入时,它在按下按钮时保存在一个地图中并显示在应用程序中,负责改变应用程序状态的函数是:
addMedicion(){
setState(() {
print('cambiando ${tipoParc} con ${selOption} \n');
medicionTipe[tipoParc.text]=selOption;
});
}
所以我在主代码中调用 addButton 函数,如下所示:
addButton('hello',addMedicion())
但这在按下 addButton 按钮时不起作用,相反,当用户在 textField (typeParc.text) 中写入时,总是执行 addMedicion () 函数显示字符串而不按下按钮
【问题讨论】:
标签: flutter dart flutter-layout flutter-dependencies flutter-test