Using a callback
import 'package:flutter/material.dart'; class ParentWidget extends StatelessWidget { @override Widget build(BuildContext context) { return ChildWidget( callback: (value) => print(value), ); } } class ChildWidget extends StatefulWidget { final Function callback; ChildWidget({required this.callback}); @override _ChildWidgetState createState() => _ChildWidgetState(); } class _ChildWidgetState extends State<ChildWidget> { @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text('Parent child'), ), body: IconButton( onPressed: () => widget.callback('I am your sailing child'), icon: Icon(Icons.sailing)), ); } }