解决flutter showDialog下拉框,复选框等无法及时响应的问题

使用StatefulBuilder

bash 复制代码
  _showDialogr() {
    showDialog(
      context: context,
      builder: (BuildContext ctx) {
        return StatefulBuilder(
          builder: (BuildContext context, StateSetter setState) {
            return Scaffold(
              body: Column(
                children: <Widget>[
                  Container(
                    height: 400,
                    padding: EdgeInsets.fromLTRB(8, 0, 8, 8),
                    decoration: BoxDecoration(
                      borderRadius: BorderRadius.circular(20),
                      color: Colors.white,
                    ),
                    child: Column(
                      mainAxisSize: MainAxisSize.min,
                      children: <Widget>[
                        SizedBox(
                          height: 15,
                        ),
                        Expanded(
                          flex: 6,
                          child: Column(
                            mainAxisSize: MainAxisSize.min,
                            children: <Widget>[
                              Row(
                                children: [
                                  Expanded(
                                    flex: 8,
                                    child: DropdownButton<String>(
                                      items: getList(),
                                      hint: Text('请选择'),
                                      value: Id,
                                      onChanged: (String? str) {
                                        setState(() {
                                         Id = str;
                                        });
                                      },
                                      elevation: 24,
                                      style: TextStyle(
                                        color: Colors.black,
                                        fontSize: 16,
                                      ),
                                    ),
                                  ),
                                ],
                              ),
                            ],
                          ),
                        ),
                      ],
                    ),
                  ),
                ],
              ),
            );
          },
        );
      },
    );
  }
相关推荐
Never_every99几秒前
8 个高清 4K 视频素材网址!无水印可商用
大数据·前端·音视频·视频
NotFound4864 分钟前
分享实战中Python Web 框架对比:Django vs Flask vs FastAPI
前端·python·django
冰暮流星4 分钟前
javascript之表单事件1
开发语言·前端·javascript
Dalydai9 分钟前
AI 辅助前端开发:两个月踩坑实录
前端·ai编程
前端那点事10 分钟前
Vue跨页面通信(8种主流方式|完整可运行Demo,Vue2/Vue3通用)
前端·vue.js
a_Ichuan11 分钟前
在HBuilderX创建的uniapp项目中使用unocss
前端·uni-app
里欧跑得慢12 分钟前
12. CSS滤镜效果详解:为页面注入艺术灵魂
前端·css·flutter·web
里欧跑得慢13 分钟前
CSS 级联层:控制样式优先级的新方式
前端·css·flutter·web
前端那点事14 分钟前
Vue大文件上传实现方案(企业级完整版)
前端·vue.js
~无忧花开~16 分钟前
CSS全攻略:从基础到实战技巧
开发语言·前端·css·学习·css3