Вы можете сделать это так:
Switch(
value: subscribed,
onValueChanged: (value) async {
if(subscribed) {
await firebaseMessaging.unsubscribeFromTopic('messages');
} else {
await firebaseMessaging.subscribeToTopic('messages');
}
setState(() => subscribed = value);
});
Обратите внимание, что это должен быть StatefulWidget
с логическим значением subscribed
, чтобы сохранить ваше состояние. Это, вероятно, нужно где-то инициализировать.