How to declare a function callback that accepts multiple parameters in Dart/Flutter? How to declare a function callback that accepts multiple parameters in Dart/Flutter? dart dart

How to declare a function callback that accepts multiple parameters in Dart/Flutter?


ValueSetter is typedef'ed as:

typedef ValueSetter<T> = void Function(T value);

As in, a function that takes one parameter. So, no, you can't hand it a function that takes two parameters.


Variables of type Function can be declared as follows:

void main() {  void Function(int) setVal1;  void Function(int, int) setVal2;  setVal1 = (int i) => print('$i');  setVal2 = (int i, int j) => print('$i, $j');  final String Function(int, int, [double]) setVal3 =      (int i, int j, [double k]) => '$i, $j, $k';  final i = 0;  final j = 1;  final double k = 2.0;  setVal1(i);  setVal2(i, j);  print(setVal3(i, j));  print(setVal3(i, j, k));}


final Function(int, String) = (int a, String b){  /* do stuff */}