解决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,
                                      ),
                                    ),
                                  ),
                                ],
                              ),
                            ],
                          ),
                        ),
                      ],
                    ),
                  ),
                ],
              ),
            );
          },
        );
      },
    );
  }
相关推荐
J***Q29215 小时前
Vue数据可视化
前端·vue.js·信息可视化
ttod_qzstudio17 小时前
深入理解 Vue 3 的 h 函数:构建动态 UI 的利器
前端·vue.js
芳草萋萋鹦鹉洲哦17 小时前
【elemen/js】阻塞UI线程导致的开关卡顿如何优化
开发语言·javascript·ui
_大龄17 小时前
前端解析excel
前端·excel
1***s63217 小时前
Vue图像处理开发
javascript·vue.js·ecmascript
槁***耿17 小时前
JavaScript在Node.js中的事件发射器
开发语言·javascript·node.js
一叶茶17 小时前
移动端平板打开的三种模式。
前端·javascript
前端大卫17 小时前
一文搞懂 Webpack 分包:async、initial 与 all 的区别【附源码】
前端
U***498317 小时前
JavaScript在Node.js中的Strapi
开发语言·javascript·node.js
Want59518 小时前
HTML音乐圣诞树
前端·html