I have a showModalBottomSheet
like the below, which I understand to inherit from BottomSheet
(right?)
showModalBottomSheet
showBottomSheet does not return a future, now it returns a PersistentBottomSheetController
var _scaffoldKey = GlobalKey<ScaffoldState>();
PersistentBottomSheetController persistentBottomSheetController;
persistentBottomSheetController = _scaffoldKey.currentState.showBottomSheet<void>(
(context)=>Container(
)
);
persistentBottomSheetController.closed.then(_closeModal);
void _closeModal(void value) {
print('modal closed');
}
Perhaps it's not the best solution, but showModalBottomSheet return a "Future" so you can used it.
For example:
void _showModal() {
Future<void> future = showModalBottomSheet<void>(
context: context,
builder: (BuildContext context) {
return Container(height: 260.0, child: Text('I am text'));
},
);
future.then((void value) => _closeModal(value));
}
void _closeModal(void value) {
print('modal closed');
}