Flutter 親Widgetから子Widgetのメソッドを呼び出す
code:parent.dart
class Parent extends StatelessWidget {
final _childState = GlobalKey<_ChildState>();
@override
Widget build(BuildContext context) {
return Column(
children: <Widget>[
Child(),
RaisedButton(
child: Text('button'),
onPress: onTapButton,
),
],
);
}
void onTapButton() {
_childState.currentState.method();
}
}
code:child.dart
class Child extends StatefulWidget {
Child({Key key}): super(key: key);
@override
State<Child> createState() => _ChildState();
}
class _ChildState extends State<Child> {
void method() {}
@override
Widget build(BuildContext context) {
return Container();
}
}