I was just practicing some design pattern shown in this Youtube video. Basically I have a screen
Widget build(BuildContext context) {
super.build(context);
RideServices rideServices = ride_services(context);
return Scaffold(
resizeToAvoidBottomInset: true,
key: scaffoldKey,
extendBodyBehindAppBar: true,
//drawer:
body: SwipeDrawer(
radius: 20,
key: drawerKey,
drawer: Theme(
data: Theme.of(context).copyWith(
canvasColor: Colors.blue[400],
),
child: Drawer_widget(),
),
hasClone: false,
bodyBackgroundPeekSize: 30,
backgroundColor: Colors.blue[400],
child: Stack(
children: [
//here
GOOGLE_container(),
RefreshWidget(),
my_location(),
BottomBar(
mapController: osmController,
saveRiderAndSearchNearRidecallback: (listDriver) async {
},
),
drawer(drawerKey: drawerKey),
SaveLocationCheckMark(key: UniqueKey(), saveLocation: saveLocation),
detail_driver(),
splash_screen()
],
),
),
);
}
Here BottomBar
is a widgets that is being shown at the bottom of the screen, am using a IndexStack
widget for this purpose
@override
Widget build(BuildContext context) {
return Positioned(
top: 67.5.h,
bottom: 0,
left: 0,
right: 0,
child: Selector<ProviderService, int>(
selector: (ctx, prod) => prod.indexWidgetInformationPicker,
shouldRebuild: (nPage, oldPage) => nPage != oldPage,
builder: (ctx, indexPage, child) {
return IndexedStack(
index: indexPage,
sizing: StackFit.passthrough,
children: [
pickUpDestination(
//0
widget: widget,
my_loc_controller: my_loc_controller),
BestRouteCalculator(
//3 1
colorizeTextStyle: colorizeTextStyle,
colorizeColors: colorizeColors),
pickRide(
//1 2
widget: widget,
my_loc_controller: my_loc_controller,
),
FindADriver(
//2 3
key: UniqueKey(),
colorizeTextStyle: colorizeTextStyle,
colorizeColors: colorizeColors),
RideStarted(), //4
],
);
},
),
);
}
}
But my approach is different than the one in the video. Also, I am having diffculty changing the size of the widgets under IndexStacked
, As all the widgets under it have a fixed size, My question is "what is the widget being used" ?
I have to show and hide the widgets under IndexStacked
but I read some where they are all built at the same time, I hope my question is clear enough and the question still remains how to I get a bottom sheet like the ones shown in the video and implement it in my code ?