How do you add a label (title text) to a Checkbox in Flutter? How do you add a label (title text) to a Checkbox in Flutter? dart dart

How do you add a label (title text) to a Checkbox in Flutter?


If you need a Checkbox with a label then you can use a CheckboxListTile.

enter image description here

  CheckboxListTile(    title: Text("title text"), //    <-- label    value: checkedValue,    onChanged: (newValue) { ... },  )

If you want the checkbox on the left of the text then you can set the controlAffinity parameter.

enter image description here

  CheckboxListTile(    title: Text("title text"),    value: checkedValue,    onChanged: (newValue) { ... },    controlAffinity: ListTileControlAffinity.leading,  //  <-- leading Checkbox  )

Notes

  • Since it is a ListTile, clicking anywhere on the row activates the onChanged() callback. You need to rebuild it with the correct checked values yourself, though. See this answer.
  • An alternate solution would be to make your own widget using a Row with a Checkbox and a Text widget. You would probably want to wrap it in a gesture detector, though, so that taps on the text would also trigger an onChanged() callback. You could start with the CheckboxListTile source code as a reference.