Чтобы передать функцию onPressв качестве параметра во Flutter, вы можете использовать различные методы. Вот несколько подходов:
-
Метод 1: передать функцию напрямую в качестве параметра.
class MyButton extends StatelessWidget { final VoidCallback onPress; MyButton({required this.onPress}); @override Widget build(BuildContext context) { return ElevatedButton( onPressed: onPress, child: Text('Press Me'), ); } }Использование:
MyButton(onPress: myFunction); -
Метод 2. Используйте определение типа для параметра функции.
typedef ButtonCallback = void Function(); class MyButton extends StatelessWidget { final ButtonCallback onPress; MyButton({required this.onPress}); @override Widget build(BuildContext context) { return ElevatedButton( onPressed: onPress, child: Text('Press Me'), ); } }Использование:
MyButton(onPress: myFunction); -
Метод 3. Передайте функцию обратного вызова с использованием анонимной функции.
class MyButton extends StatelessWidget { final Function() onPress; MyButton({required this.onPress}); @override Widget build(BuildContext context) { return ElevatedButton( onPressed: () { // Additional logic before calling the callback function onPress(); }, child: Text('Press Me'), ); } }Использование:
MyButton(onPress: () { // Your function implementation here });
Это всего лишь несколько способов передать функцию onPressв качестве параметра во Flutter. Выберите тот, который лучше всего соответствует вашим потребностям.
Функция как параметр во Flutter”
, Обратный вызов, Дарт