我正在尝试在Breakfast.dart文件中添加以下格式的列表:
列出breakfastFoodList1 = [ 新食物(“ img / Espresso Double.png”,“ Expresso”,“热饮料,健康”,“ 30”,“ DAILY4”,“ 4.0”,“ 15分钟”,“ 10”), 新食物(“ img / Americano.png”,“ Americano”,“早餐,美味”,“ 10”,“ MORNINGX”,“ 3.4”,“ 10分钟”,“ 14”), ];
我在早餐和午餐滑块之间遇到了底部溢出错误,因为我试图在早餐滑块中添加两个以上的列表,但它不起作用。我想知道如果要再添加至少5个滑块,如何添加空间 Bottom overflow by 426 pixel
class HomeTabXD extends StatefulWidget{
@override
State createState() {
return _HomeTabXDState();
}
}
class _HomeTabXDState extends State<HomeTabXD> {
@override
Widget build(BuildContext context) {
SizeConfig().init(context);
return Stack(
children: <Widget>[
Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
//Appbar
SizedBox(
height: SizeConfig.safeBlockVertical * 6.4,
),
Padding(
padding: EdgeInsets.symmetric(
horizontal: SizeConfig.safeBlockHorizontal * 7),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
BackMenuXD(),
Icon(Icons.person_outline,color: Colors.grey[800],)
],
),
),
SizedBox(
height: SizeConfig.safeBlockVertical * 4,
),
Padding(
padding: EdgeInsets.symmetric(
horizontal: SizeConfig.safeBlockHorizontal * 7),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
Text(
'Menu',
style: TextStyle(
fontFamily: 'Poppins',
fontSize: SizeConfig.safeBlockHorizontal * 7.2,
fontWeight: FontWeight.w600,
letterSpacing: 0.4
),
)
// Text(
// 'Healthy Food',
// style: TextStyle(
// fontFamily: 'Poppins',
// fontSize: SizeConfig.safeBlockHorizontal * 7.2,
// fontWeight: FontWeight.w600,
// letterSpacing: 0.4
// ),
// ),
],
),
Container(
decoration: BoxDecoration(
color: Colors.grey[200],
borderRadius: BorderRadius.circular(SizeConfig.safeBlockVertical)
),
padding: EdgeInsets.all(SizeConfig.safeBlockHorizontal * 2),
child: Icon(Icons.search,size: SizeConfig.safeBlockHorizontal * 5.4,color: Colors.grey[700],),
),
],
),
),
],
),
Padding(
padding: EdgeInsets.only(top: SizeConfig.safeBlockVertical * 26),
child: SingleChildScrollView(
physics: BouncingScrollPhysics(),
child: Padding(
padding: EdgeInsets.only(
left: SizeConfig.safeBlockHorizontal * 7),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
//Special
Padding(
padding: EdgeInsets.only(right: SizeConfig.safeBlockHorizontal * 7),
child: Text(
'Today\'s Special',
style: TextStyle(
fontFamily: 'Poppins',
fontSize: SizeConfig.safeBlockHorizontal * 3.3,
fontWeight: FontWeight.w500,
letterSpacing: 0.2
),
),
),
SizedBox(height: SizeConfig.safeBlockVertical,),
GestureDetector(
onTap: (){
Navigator.push(context, ScaleRoute(page: MoreFoodXD(0)));
},
child: SpecialMenuXD()),
//Breakfast
SizedBox(height: SizeConfig.safeBlockVertical * 4,),
Padding(
padding: EdgeInsets.only(right: SizeConfig.safeBlockHorizontal * 4.4),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
Text(
'Today\'s Breakfast',
style: TextStyle(
fontFamily: 'Poppins',
fontSize: SizeConfig.safeBlockHorizontal * 3.3,
fontWeight: FontWeight.w500,
letterSpacing: 0.2
),
),
GestureDetector(
onTap: (){
Navigator.push(context, ScaleRoute(page: MoreFoodXD(0)));
},
child: Text(
'SHOW MORE',
style: TextStyle(
fontFamily: 'Poppins',
fontSize: SizeConfig.safeBlockHorizontal * 3,
fontWeight: FontWeight.w500,
letterSpacing: 0.2,
color: Colors.orange[600]
),
),
),
],
),
),
SizedBox(height: SizeConfig.safeBlockVertical ,),
GestureDetector(
onTap: (){
Navigator.push(context, ScaleRoute(page: MoreFoodXD(0)));
},
child: BreakfastMenuXD()),
//Lunch
SizedBox(height: SizeConfig.safeBlockVertical * 4,),
Padding(
padding: EdgeInsets.only(right: SizeConfig.safeBlockHorizontal * 4.4),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
Text(
'Today\'s Lunch',
style: TextStyle(
fontFamily: 'Poppins',
fontSize: SizeConfig.safeBlockHorizontal * 3.3,
fontWeight: FontWeight.w500,
letterSpacing: 0.2
),
),
GestureDetector(
onTap: (){
Navigator.push(context, ScaleRoute(page: MoreFoodXD(1)));
},
child: Text(
'SHOW MORE',
style: TextStyle(
fontFamily: 'Poppins',
fontSize: SizeConfig.safeBlockHorizontal * 3,
fontWeight: FontWeight.w500,
letterSpacing: 0.2,
color: Colors.orange[600]
),
),
),
],
),
),
SizedBox(height: SizeConfig.safeBlockVertical,),
GestureDetector(
onTap: (){
Navigator.push(context, ScaleRoute(page: MoreFoodXD(1)));
},
child: LunchMenuXD()),
//Dinner
SizedBox(height: SizeConfig.safeBlockVertical ,),
Padding(
padding: EdgeInsets.only(right: SizeConfig.safeBlockHorizontal * 4.4),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
Text(
'Today\'s Dinner',
style: TextStyle(
fontFamily: 'Poppins',
fontSize: SizeConfig.safeBlockHorizontal * 3.3,
fontWeight: FontWeight.w500,
letterSpacing: 0.2
),
),
GestureDetector(
onTap: (){
Navigator.push(context, ScaleRoute(page: MoreFoodXD(2)));
},
child: Text(
'SHOW MORE',
style: TextStyle(
fontFamily: 'Poppins',
fontSize: SizeConfig.safeBlockHorizontal * 3,
fontWeight: FontWeight.w500,
letterSpacing: 0.2,
color: Colors.orange[600]
),
),
),
],
),
),
SizedBox(height: SizeConfig.safeBlockVertical,),
GestureDetector(
onTap: (){
Navigator.push(context, ScaleRoute(page: MoreFoodXD(2)));
},
child: DinnerMenuXD()),
SizedBox(height: SizeConfig.safeBlockVertical * 4,),
],
),
),
),
),
// Align(
// alignment: Alignment.bottomCenter,
// child: BottomBarXD(),
// ),
],
);
}
}
Size Config Class:
class SizeConfig {
static MediaQueryData _mediaQueryData;
static double screenWidth;
static double screenHeight;
static double blockSizeHorizontal;
static double blockSizeVertical;
static double _safeAreaHorizontal;
static double _safeAreaVertical;
static double safeBlockHorizontal;
static double safeBlockVertical;
void init(BuildContext context) {
_mediaQueryData = MediaQuery.of(context);
screenWidth = _mediaQueryData.size.width;
screenHeight = _mediaQueryData.size.height;
blockSizeHorizontal = screenWidth / 100;
blockSizeVertical = screenHeight / 100;
_safeAreaHorizontal = _mediaQueryData.padding.left +
_mediaQueryData.padding.right;
_safeAreaVertical = _mediaQueryData.padding.top +
_mediaQueryData.padding.bottom;
safeBlockHorizontal = (screenWidth -
_safeAreaHorizontal) / 100;
safeBlockVertical = (screenHeight -
_safeAreaVertical) / 100;
}
}