[Flutter]InkWellのタップを無効にするには?

Flutter

どうも、ちょげ(@chogetarou)です。

InkWellのタップを無効にする方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

InkWellのタップを無効にするには、「null」を使います。

具体的には、無効にしたいときに、InkWellの引数「onTap」に「null」を指定します。

InkWell(
  onTap: null,
  child: Widget(),
),

引数「onTap」にnullを指定すれば、InkWellのタップを無効にすることが出来ます。

使用例

以下は、使用例です。

  var _count = 0;
  bool _isEnabled = true;
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Center(
        child: InkWell(
          onTap: _isEnabled
              ? () {
                  setState(() {
                    _count++;
                    if (_count > 4) {
                      _isEnabled = false;
                    }
                  });
                }
              : null,
          child: Container(
            width: 200,
            height: 50,
            child: Text('$_count'),
            alignment: Alignment.center,
          ),
        ),
      ),
    );
  }

コメント

タイトルとURLをコピーしました