はじめに
FlutterでGestureDetectorを使って画面全体にonTap付けたかった時にうまく動作しなくて相当調べるのに時間がかかったので備忘録として記事に残します。
この記事で紹介している方法以外にもいい方法があればコメントで教えてもらえるとありがたいです🙏
結論
main.dart
GestureDetector(
onTap: () => hoge(),
child: ConstrainedBox(
constraints: const BoxConstraints.expand(),
child: MyAppWidget(),
),
);
子ウィジェットとGestureDetectorの間にConstrainedBoxを挟んであげると動作しました。ConstrainedBoxはchildに指定したウィジェットの要素の大きさを制限するものだそうです。