onFunctionCall 中的 setState 不改变值

问题描述

我正在显示底部工作表,认情况下,我已将 bool closeBottomSheet 赋予其 isdismissible & enableDrag 属性,并在单击上传按钮时点击底部工作表中的 api 我正在传递函数我正在将 setState 中的 closeBottomSheet 值从 true 更改为 false。 我正在打印值及其正确更改,但不知道为什么不设置这些值这些属性 isdismissible & enableDrag

这是我的代码

                  showModalBottomSheet(
                    elevation: 10,shape: RoundedRectangleBorder(
                      borderRadius: BorderRadius.only(
                        topLeft: Radius.circular(20),topRight: Radius.circular(20),),isdismissible: closeBottomSheet,enableDrag: closeBottomSheet,isScrollControlled: true,context: context,builder: (context) => BottomSheet(onCompletion: (value){
                      print("val $value");
                      setInnerState(() {
                        closeSheet = value;
                      });

                      print("cbs $closeBottomSheet");
                    }
                      )).then((value) {
                  getAllPlaylists(0,5);
                });

bottomSheet 中的按钮

   RectangularButton(
                  title: "Create",width: MediaQuery.of(context).size.width / 1.0,onpressed: () {
                    if(tvPlayListModel.playlistName == '' || tvPlayListModel.playlistName.length  <= 2) {
                       UtilService().getDangerMsg("Minimum length of playlist name is 3 characters.",context);
                    }
                    else if ( _image == null){
                      UtilService().getDangerMsg("Please pick an image first.",context);
                    }
                    else{

                      setState(() {
                        widget.onCompletion.call(false);
                        showSpinner = true;

                      });

                      createPlayList();
                    }

                  },

我希望当用户单击底部工作表中的上传按钮时,他不应该在上传完成之前向下拖动或关闭底部工作表。 我正在打印值并且它们正在正确更改

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)