くらげになりたい。

くらげのようにふわふわ生きたい日曜プログラマなブログ。趣味の備忘録です。

FlutterのGestureDetectorでpaddingでもタッチを検出する

GestureDetectorをつかってContainerもタッチできるようにしたかったけど、
余白で反応しなかったので、いろいろ調べてみたときの備忘録(*´ω`*)

HitTestBehaviorを設定するらしい

使い方

使い方はこんな感じ

GestureDetector(
  // これを指定
  behavior: HitTestBehavior.opaque,
  onTap: () => {},
  child: Container(
    padding: const EdgeInsets.add(right: 60),
    child: Text("SAMPLE TEXT", textAlign: TextAlign.center),
  ),
);

HitTestBehaviorの値

指定した値によって、検出範囲が変わるっぽい

// デフォルト: 子Widgetのみ反応。Paddingなどは無視
behavior: HitTestBehavior.deferToChild,
// Paddingなども含めて反応
behavior: HitTestBehavior.opaque,
// 背景が透明の場合、Widgetの背景をタッチしても反応
behavior: HitTestBehavior.translucent,

以上!!

参考にしたサイトさま