Flutter でボタンの有効状態を設定する方法がわかりません。
ドキュメントによると、onPressed
ボタンを無効にするには null に設定し、有効にするには値を指定するように書かれています。ボタンがライフサイクルを通じて同じ状態を維持する場合は、これで問題ありません。
ボタンの有効状態 (または onPressed コールバック) を何らかの方法で更新できるカスタムの Stateful ウィジェットを作成する必要があると感じています。
どうすればいいでしょうか? これはかなり簡単な要件のように思えますが、その方法に関するドキュメントは見つかりません。
ベストアンサー1
によるドキュメント:
コールバックが null の場合
onPressed
、ボタンは無効になり、デフォルトでは のフラットなボタンのようになりますdisabledColor
。
したがって、次のようなことを行うことができます。
RaisedButton(
onPressed: calculateWhetherDisabledReturnsBool() ? null : () => whatToDoOnPressed,
child: Text('Button text')
);