首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >上下文弹出后的模式底部工作表

上下文弹出后的模式底部工作表
EN

Stack Overflow用户
提问于 2021-03-23 16:02:15
回答 1查看 69关注 0票数 1

ListTile位于build方法内的模式底部表单中。它首先关闭当前的底页。然后,当点击时,它会显示一个模式底页。

它实际上是有效的。

但是我的困惑是,它不应该产生关于已经弹出的上下文的错误吗?

代码语言:javascript
运行
复制
    ListTile(
      title: Text('Test'),
      onTap: () {
        Navigator.of(context).pop();  // Dismiss current bottom sheet
        showModalBottomSheet(  // Show new bottom sheet
          context: context,  // Using the same popped context?
          builder: (context) {
            return Container(
              child: Text('test test'),
            );
          },
        );
      },
    ),
EN

回答 1

Stack Overflow用户

发布于 2021-03-23 16:12:17

context属于包装小部件的build(BuildContext context)方法。当小部件保持不变时,上下文是有效的。

如果您对它的工作原理感兴趣:当您调用Navigator.of(context)时,它会在树上遍历以查找最近的Navigator小部件,从这个上下文开始。当你展示新的底页时,它也会做同样的事情。因此,只要在当前Navigator下,任何上下文都可以。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66759267

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档