颤动的底部表固定无法刷新主页

发布于 2025-01-23 00:58:59 字数 852 浏览 0 评论 0原文

底部表格中的固定剂即使使用statefulwidget也无法正常工作...我想在弹出底部表格之后刷新父的显示,

我应该在void中调用setState吗?如何做?

ElevatedButton(
             ...
   onPressed: () {
                  BottomSheet(context, id, expiry);
                  },
             ...
),


void BottomSheet(BuildContext context, String id, String expiry) {
  showModalBottomSheet(
    context: context,
    isScrollControlled: true,
    ....
        ),
      ),
      child: BottomSheetWidget(id, expiry),
    ),
  );
}


class BottomSheetWidget extends StatefulWidget {
  ....
}

class _BottomSheetWidgetState extends State<BottomSheetWidget> {
  ..
                onTap: () {
                  setState(() {
                    updated parent data here.....
                  });
                  Navigator.pop(context);
                  },
                ....
}

the setstate in bottomsheet is not working even using statefulwidget... i want to refresh the display of parent after popping bottomsheet

should i call setstate in void instead? how to do this ?

ElevatedButton(
             ...
   onPressed: () {
                  BottomSheet(context, id, expiry);
                  },
             ...
),


void BottomSheet(BuildContext context, String id, String expiry) {
  showModalBottomSheet(
    context: context,
    isScrollControlled: true,
    ....
        ),
      ),
      child: BottomSheetWidget(id, expiry),
    ),
  );
}


class BottomSheetWidget extends StatefulWidget {
  ....
}

class _BottomSheetWidgetState extends State<BottomSheetWidget> {
  ..
                onTap: () {
                  setState(() {
                    updated parent data here.....
                  });
                  Navigator.pop(context);
                  },
                ....
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

紙鸢 2025-01-30 00:58:59

尝试使用MaterialPageroute重建父页面的显示

onTap: () {
  setState(() {
     updated parent data here.....
   });
  Navigator.pushReplacement(
    context,
    MaterialPageRoute(builder: (context) => ParentScreen()),
  );
}

Try using MaterialPageRoute to rebuild the display of the parent page

onTap: () {
  setState(() {
     updated parent data here.....
   });
  Navigator.pushReplacement(
    context,
    MaterialPageRoute(builder: (context) => ParentScreen()),
  );
}
苍暮颜 2025-01-30 00:58:59

在ShowModelBottomSheet()的末尾致电。

 showModalBottomSheet(context: context, builder: builder).then((value) {
  setState(() {
    
  });
});

Call .then method at the end of showModelBottomSheet()

 showModalBottomSheet(context: context, builder: builder).then((value) {
  setState(() {
    
  });
});
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文