showNUIBottomSheetForResult<T> static method
Future<T?>
showNUIBottomSheetForResult<T>({
- required BuildContext context,
- bool dismissible = true,
- Color? barrierColor,
- double opacity = 0.4,
- bool isScrollControlled = false,
- required BottomSheetBuilder content,
- double elevation = 1,
- Function? onDismiss,
Implementation
static Future<T?> showNUIBottomSheetForResult<T>({required BuildContext context, bool dismissible = true, Color? barrierColor, double opacity = 0.4, bool isScrollControlled = false, required BottomSheetBuilder content, double elevation = 1, Function? onDismiss}) async{
NUIBottomSheet dialog = NUIBottomSheet._builder(content: content, dismiss: (Function innerDismiss){
log("NUIBottomSheet -> Dialog dismiss not initiated yet");
});
try {
return await showModalBottomSheet<T>(
barrierColor: barrierColor ?? Colors.black.withOpacity(opacity ?? 0.4),
isDismissible: dismissible ?? true,
backgroundColor: NUIColors.NUITransparent,
context: context,
elevation: elevation ?? 0,
isScrollControlled: isScrollControlled ?? false,
builder: (context) {
dialog.dismiss = (Function innerDismiss){
log("NUIBottomSheet -> Dismissing dialog ... ");
if(onDismiss != null) {
onDismiss();
}
innerDismiss();
//Navigator.pop(context);
};
return Container(
height: double.infinity,
alignment: Alignment.bottomCenter,
child: content(context),
);
},
);
}catch(e){}
return null;
}