SingleChildScrollView(
scrollDirection: Axis.horizontal,
child: Row(children: <Widget>[
TextButton(
style: TextButton.styleFrom(primary: Colors.grey,),
child: Text("Все"),
onPressed: () {
setState(() {
makeStuff("all");
});
},),
TextButton(style: TextButton.styleFrom(primary: Colors.grey,),
child: Text("Первые блюда"),
onPressed: () {
setState(() {
makeStuff("first");
});
},),
TextButton(style: TextButton.styleFrom(primary: Colors.grey,),
child: Text("Вторые блюда"),
onPressed: () {
setState(() {
makeStuff("second");
});
},),
import 'package:flutter/material.dart';
class ButtonWidget extends StatefulWidget {
const ButtonWidget({Key? key}) : super(key: key);
@override
_ButtonWidgetState createState() => _ButtonWidgetState();
}
class _ButtonWidgetState extends State<ButtonWidget> {
late Color _buttonColor;
@override
void initState() {
//Начальное значение цвета кнопки
_buttonColor = Colors.red;
super.initState();
}
@override
Widget build(BuildContext context) {
return ElevatedButton(
onPressed: () {
//Здесь меняем переменную цвета кнопки внутри state
setState(() {
if (_buttonColor == Colors.red) {
_buttonColor = Colors.green;
} else {
_buttonColor = Colors.red;
}
});
},
style: ElevatedButton.styleFrom(
//Здесь указывается, что для цвета нужно взять переменную
primary: _buttonColor,
),
child: const Text('Нажми на меня'),
);
}
}