在小吃栏中的两个项目之间进行选择,并在不关闭小吃栏的情况下更改所选颜色,然后使用setState不起作用再次将其打开
此代码显示小吃店调用setState mehtod setState不会更改实时显示的小吃栏,而只是更改值 因此,如果您再次致电点心栏,您将看到新值
bool isGreen = false;
void snackbarTest() {
_key.currentState.showSnackBar(SnackBar(
content: Row(
crossAxisAlignment: CrossAxisAlignment.center,
mainAxisAlignment: MainAxisAlignment.spaceAround,
children: <Widget>[
InkWell(
onTap: () {
setState(() {
isGreen = !isGreen;
});
},
child: Container(
height: 40,
width: 50,
color: isGreen ? Colors.green : Colors.red,
),
),
InkWell(
onTap: () {
setState(() {
isGreen = !isGreen;
});
},
child: Container(
height: 40,
width: 50,
color: isGreen ? Colors.red : Colors.green,
),
),
],
),
));
}