1.FLutter Dialog setState
使用StatefulBuilder
组件,使用setState1方法管理Dialog状态
showDialog(
context: context,
builder: (context) {
return StatefulBuilder(
builder: (BuildContext context1,
void Function(void Function()) setState1) {
return Scaffold(
backgroundColor: Colors.transparent,
body: Center(
child: Container(
width: 600.px,
height: 610.px,
padding: EdgeInsets.all(20.px),
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(30.px),
color: Colors.white,
),
child: Column(
children: [
Text("创建房间"),
SizedBox(height: 20.px),
Row(
mainAxisAlignment: MainAxisAlignment.spaceAround,
children: [
if (roomList != null)
for (var data in roomList!)
Column(
children: [
GestureDetector(
onTap: () {
chooseType = data.type;
print(chooseType);
setState1(() {});
},
child: Container(
child: Image.network(
data.icon,
width: 230.px,
),
decoration: BoxDecoration(
border:
chooseType == data.type
? Border.all(
color: Colors
.blueAccent,
width: 3.px)