どうも、ちょげ(@chogetarou)です。
「DataTableのチェックボックスがタップしても変わらない」
という人に向けて、DataTableのチェックボックスの状態が変わらない時の対処法を紹介します。
対処法

ここでは対処法を2つ紹介します。
selected
1つは、DataRowの引数「selected」にチェック中かどうかのBool値を指定する方法です。
DataRow(
selected: _isSelected,
cells: [
・・・
],
),
これを設定していないと、値が変わっても状態が変化しません。
setState
もう1つは、「setState」を使う方法です。
具体的には、DataRowの引数「onSelectedChanged」の関数の処理をsetStateでラップします。
DataRow(
onSelectChanged: (bool? selected) {
setState(() {
//処理
});
},
cells: [
・・・
],
),
まとめ
この記事で紹介したDataTableのチェックボックスが変わらない時の対処法は、次の2つです。
- DataRowの引数「seleted」
- DataRowの引数「onSelectedChanged」でsetStateを使う
コメント