首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在showModalBottomSheet中使用StatelessWidget?

如何在showModalBottomSheet中使用StatelessWidget?
EN

Stack Overflow用户
提问于 2019-04-11 08:09:43
回答 3查看 852关注 0票数 1

我试着像这样编码

代码语言:javascript
复制
showModalBottomSheet(
   context: context, // I got error here (Undefined name 'context'.dart(undefined_identifier))
   builder: (context){

   return Container(

   );
);

我在context: context上有错误,错误消息是

未定义的名称‘context’. name (Undefined_identifier)

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2019-04-11 08:18:52

这就是如何在一个showModalBottomSheet中调用StatelessWidget

代码语言:javascript
复制
class TestStatelessWidget extends StatelessWidget{
  @override
  Widget build(BuildContext context) {

    return RaisedButton(
      child: Text('Press me'),
      onPressed: ()=>showPress(context),
    );
  }

  void showPress(BuildContext context){
    showModalBottomSheet(context:context, builder: (context){
      return Text('hello');
    });
  }



}
票数 4
EN

Stack Overflow用户

发布于 2019-04-11 09:18:07

您会得到这个错误,因为您无法访问context类中的任何地方。如果您使用这个外部的context方法,则只需要从build()传递build(),否则在build()方法中使用它。

解决方案1. (在build()内部使用)

代码语言:javascript
复制
@override
Widget build(BuildContext context) {
  return RaisedButton(
    child: Text("Show sheet"),
    onPressed: () {
      showModalBottomSheet(context: context, builder: (context) => YourWidget());
    },
  );
}

解决方案2. (使用外部build())

代码语言:javascript
复制
@override
Widget build(BuildContext context) {
  return RaisedButton(
    child: Text("Show sheet"),
    onPressed: () => _showSheet(context),
  );
}

void _showSheet(BuildContext context) {
  showModalBottomSheet(context: context, builder: (context) => YourWidget());
}
票数 1
EN

Stack Overflow用户

发布于 2019-04-11 08:14:57

您没有正确关闭showModalBottomSheetbuilder。缺少一个}

这将是正确的用法:

代码语言:javascript
复制
showModalBottomSheet(
    context: context,
    builder: (builder){
      return Container();
    }
);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55627656

复制
相关文章

相似问题

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