颤振listview底部溢出
我的颤振应用程序中有两个水平listview。当我放置第二个listview时出错。 我使用nestedscrollview来滚动页面,但这个问题没有解决。如何管理小部件的高度以避免出现此错误?我试图为第二个listview设置高度,但仍然出错 看看我的代码:颤振listview底部溢出,listview,flutter,widget,height,Listview,Flutter,Widget,Height,我的颤振应用程序中有两个水平listview。当我放置第二个listview时出错。 我使用nestedscrollview来滚动页面,但这个问题没有解决。如何管理小部件的高度以避免出现此错误?我试图为第二个listview设置高度,但仍然出错 看看我的代码: @override Widget build(BuildContext context) { return new MaterialApp( theme: ThemeData( font
@override
Widget build(BuildContext context) {
return new MaterialApp(
theme: ThemeData(
fontFamily: "Vazir",
primaryColor: Colors.red,
accentColor: Colors.green,
),
debugShowCheckedModeBanner: false,
home: Directionality(
textDirection: TextDirection.rtl,
child: Scaffold(
drawer: myDrawerLayout(context),
body: NestedScrollView(
headerSliverBuilder: (context, bool innerScroll) {
return <Widget>[
SliverAppBar(
title: Text(
"فروشگاه",
style: TextStyle(fontFamily: "Vazir"),
))
];
},
body: Column(
children: <Widget>[
_imageSlider(),
_explanationTextForAmazingProduct(),//text for listview explanation
_SizedBox(
height: 190,
child: ListView.builder(
scrollDirection: Axis.horizontal,
padding: EdgeInsets.all(8),
shrinkWrap: true,
itemCount: productList.length,
itemBuilder: (BuildContext context, int index) {
return productList.isEmpty || productList == null
? wiatingView()
: Card(
child: Container(
width: 200,
height: 70,
child: Column(
children: <Widget>[
Padding(
padding:
const EdgeInsets.only(top: 8),
child: Container(
width: 80,
height: 80,
decoration: BoxDecoration(
image: DecorationImage(
image: NetworkImage(
productList[index]
.getImage()))),
),
),
Padding(
padding: const EdgeInsets.only(
right: 8, left: 8, top: 8),
child: Center(
child: Text(productList[index]
.getTitle()),
),
),
Center(
child: Text(
productList[index].getPrice(),
style: TextStyle(
color: Colors.green),
),
),
],
),
),
);
}),
),
explanationTextForMostSellProduct(),//text for second listview explanation
Expanded(
child: ListView.builder(
scrollDirection: Axis.horizontal,
padding: EdgeInsets.all(8),
shrinkWrap: true,
itemCount: productList.length,
itemBuilder: (BuildContext context, int index) {
return productList.isEmpty || productList == null
? wiatingView()
: Card(
child: Container(
width: 200,
height: 150,
child: Column(
children: <Widget>[
Padding(
padding:
const EdgeInsets.only(top: 8),
child: Container(
width: 80,
height: 80,
decoration: BoxDecoration(
image: DecorationImage(
image: NetworkImage(
productList[index]
.getImage()))),
),
),
Padding(
padding: const EdgeInsets.only(
right: 8, left: 8, top: 8),
child: Center(
child: Text(productList[index]
.getTitle()),
),
),
Center(
child: Text(
productList[index].getPrice(),
style: TextStyle(
color: Colors.green),
),
),
],
),
),
);
}),
)
],
),
)),
));
}
@覆盖
小部件构建(构建上下文){
返回新材料PP(
主题:主题数据(
丰特家族:“瓦齐尔”,
原色:颜色。红色,
accentColor:Colors.green,
),
debugShowCheckedModeBanner:false,
家:方向性(
textDirection:textDirection.rtl,
孩子:脚手架(
抽屉:我的抽屉布局(上下文),
正文:嵌套滚动视图(
headerSliverBuilder:(上下文,bool innerScroll){
返回[
滑杆(
标题:正文(
"فروشگاه",
样式:TextStyle(fontFamily:“Vazir”),
))
];
},
正文:专栏(
儿童:[
_imageSlider(),
_explanationTextForAmazingProduct(),//listview解释文本
_大小盒子(
身高:190,
子项:ListView.builder(
滚动方向:轴水平,
填充:边缘设置。全部(8),
收缩膜:对,
itemCount:productList.length,
itemBuilder:(构建上下文,int索引){
return productList.isEmpty | | productList==null
?wiatingView()
:卡片(
子:容器(
宽度:200,
身高:70,
子:列(
儿童:[
填充物(
衬垫:
仅限常数边集(顶部:8),
子:容器(
宽度:80,
身高:80,
装饰:盒子装饰(
图像:装饰图像(
图片:NetworkImage(
产品目录[索引]
.getImage()),
),
),
填充物(
填充:仅限常量边设置(
右:8,左:8,顶:8),
儿童:中心(
子项:文本(产品列表[索引]
.getTitle()),
),
),
居中(
子:文本(
productList[index].getPrice(),
样式:TextStyle(
颜色:颜色。绿色),
),
),
],
),
),
);
}),
),
explanationTextForMostSellProduct(),//第二个listview解释的文本
扩大(
子项:ListView.builder(
滚动方向:轴水平,
填充:边缘设置。全部(8),
收缩膜:对,
itemCount:productList.length,
itemBuilder:(构建上下文,int索引){
return productList.isEmpty | | productList==null
?wiatingView()
:卡片(
子:容器(
宽度:200,
身高:150,
子:列(
儿童:[
填充物(
衬垫:
仅限常数边集(顶部:8),
子:容器(
宽度:80,
身高:80,
装饰:盒子装饰(
图像:装饰图像(
图片:NetworkImage(
产品目录[索引]
.getImage()),
),
),
填充物(
填充:仅限常量边设置(
SizedBox(
height: 190,
child: ListView.builder(....