Flutterでボタンを無効にするにはどうすればいいですか? 質問する

Flutterでボタンを無効にするにはどうすればいいですか? 質問する

Flutter でボタンの有効状態を設定する方法がわかりません。

ドキュメントによると、onPressedボタンを無効にするには null に設定し、有効にするには値を指定するように書かれています。ボタンがライフサイクルを通じて同じ状態を維持する場合は、これで問題ありません。

ボタンの有効状態 (または onPressed コールバック) を何らかの方法で更新できるカスタムの Stateful ウィジェットを作成する必要があると感じています。

どうすればいいでしょうか? これはかなり簡単な要件のように思えますが、その方法に関するドキュメントは見つかりません。

ベストアンサー1

によるドキュメント:

コールバックが null の場合onPressed、ボタンは無効になり、デフォルトでは のフラットなボタンのようになりますdisabledColor

したがって、次のようなことを行うことができます。

RaisedButton(
  onPressed: calculateWhetherDisabledReturnsBool() ? null : () => whatToDoOnPressed,
  child: Text('Button text')
);

おすすめ記事