【问题标题】:Getting a value when showBottomSheet closesshowBottomSheet 关闭时获取值
【发布时间】:2020-07-25 08:04:32
【问题描述】:

showBottomSheet 关闭时如何发送值?

    var sheetController = showBottomSheet(
        context: context, builder: (context) => BottomSheet(
             onClosing:(){},
             builder: (BuildContext context) {
               return Container(
                      width:100.0,
                     child:FlatButton(
                            onPressed:(){
                             Navigator.pop(context,data);
                       }))
}));
        sheetController.closed.then((value) async {
         print(value);
      }
    });

我想获取数据,但它打印出null

【问题讨论】:

标签: flutter dart


【解决方案1】:

将您的代码更改为:

var sheetController = showBottomSheet(
context: context, builder: (context) => displayBottomSheet(number));
sheetController.closed.then((value) async {
      await print(value);
}

【讨论】:

  • 该数字用于控制要显示的底页。我想在底部表关闭时获得一个值,我在某处读取以使用 Navigator.pop 发送数据,但它不起作用
  • 您可以使用 result 参数返回结果。看看这个:api.flutter.dev/flutter/widgets/Navigator/pop.html
  • 我确实使用了结果参数,但仍然打印 null。它没有收到结果
  • 您忘记写 await 关键字,因为您正在为异步数字赋值。编辑了代码。看看吧。
  • 我编辑了我认为“数字”让你有点困惑的问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多