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

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.

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 theCheckboxListTilesource code as a reference.