我找不到如何传递由GestureDetector捕获的事件的方法。但是,可以通过以下方式以编程方式关闭ModalBottomSheet
Navigator.pop(context);
因此,我只是在GestureDetector的onTap回调函数中调用了pop函数。
showModalBottomSheet<Null>(context: context, builder: (BuildContext context){ return new SingleChildScrollView(child: new Column(crossAxisAlignment: CrossAxisAlignment.stretch, children: [ new GestureDetector(onTap: () { Navigator.pop(context); doSomething(); }, child: new Text("Item 1") ), new GestureDetector(onTap: () { Navigator.pop(context); doSomething(); }, child: new Text("Item 2") ), ]), );});


