記事の内容
StatelessWidgetのonChangedの中でsetStateを使って状態を変化させたい。
でも、StatelessWidgetの中ではsetStateを使うことができない。
どうしたらええんや?と悩んでいる人も多いはずです。
この記事では、その解決方法を紹介します。
実装方法
具体的には、StatelessWidgetのコンストラクタに「Function」を渡して、それをクラスの中で実装します。
呼び出し元
trailing: TaskCheckbox( checkboxState: isChecked, toggleCheckboxState: (bool checkboxState) { setState(() { isChecked = checkboxState; }); }, ),
StatelessWidget側
return Checkbox( activeColor: Colors.lightBlueAccent, value: checkboxState, onChanged: toggleCheckboxState, );