我想传递一个函数作为包含按钮的小部件的参数(传递的函数将在按钮的onPressed
上执行)
myFunction1(){
// do some things
}
myWidget(Function onPress){
return FlatButton(
onPressed : onPress,
);
}
,然后调用myWidget(myFunction1)
。但这是行不通的,我认为这是正常的。该函数已正确执行,并尝试给出结果。但是我不希望因为该函数的结果而立即执行该函数,我有点想传递该函数的“引用”。
答案 0 :(得分:0)
Widget myWidget(Function onPress){
return FlatButton(
onPressed : onPress,
child: Text('Button'),
);
}
myWidget((){
//your code...
});
答案 1 :(得分:0)
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('First Screen'),
),
body: Center(
child: myWidget(myFunction1),
),
);
}
myFunction1() {
print('called');
}
myWidget(Function onPressed) {
return FlatButton(
child: Text('FlatButton'),
onPressed: onPressed,
);
}