Flutter 如何使图像填充列中的剩余空间
如何制作我的图像(这里是天蓝色)以填充GirdView项目的剩余空间 事实上,我希望我的文本在底部,上面的空间是给我的图像,以最大限度地扩大空间 这是我的密码Flutter 如何使图像填充列中的剩余空间,flutter,Flutter,如何制作我的图像(这里是天蓝色)以填充GirdView项目的剩余空间 事实上,我希望我的文本在底部,上面的空间是给我的图像,以最大限度地扩大空间 这是我的密码 return SafeArea( child:Column( children: [ Text("空氣品質"), Container( color: Colors.blue, child: Aspec
return SafeArea(
child:Column(
children: [
Text("空氣品質"),
Container(
color: Colors.blue,
child: AspectRatio(
aspectRatio: 4.0 / 3.0,
child: Stack(
children: [
PageView.builder(
itemBuilder: (context, index){
return Center(
child: _bannerPageItems[index],
);
},
itemCount: _bannerPageItems.length,
onPageChanged: _onBannerChange,
controller: _pageController,
),
Align(
alignment: Alignment.bottomCenter,
child: _buildCircleIndicator()
),
Align(
alignment: Alignment.bottomRight,
child: Container(
margin: EdgeInsets.only(right: 10 , bottom: 10),
child: Text(
"空氣品質, 高雄市",
style: TextStyle(fontSize: 12 , color: Colors.white),
)
)
)
],
),
)
),
Expanded(
child: Container(
color: Colors.blue,
child: Align(
alignment: Alignment.center,
child: MeasuredSize(
onChange: (size){
setState(() {
_girdViewItemRatio = (_ratio.width / 3) / (size.height / 2);
print("${(_ratio.width / 3) / (size.height / 2)}");
});
},
child: GridView.count(
crossAxisCount: 3,
childAspectRatio: _girdViewItemRatio,
children: <Widget>[
Container(
child: IntrinsicHeight(
child: Column(
mainAxisAlignment: MainAxisAlignment.start ,
children: [
Expanded(
child: Container(
alignment: Alignment.center,width: double.infinity ,
height: double.infinity, color: Colors.cyanAccent,)
) ,
Flexible(
child: Text("我的合約", style: TextStyle(fontSize: 18),)
)
]),
)
),
Container(child: Center(child: Text('qwe')) , color: Colors.yellow, height: double.infinity,),
Container(child: Center(child: Text('qwe')) , color: Colors.deepOrange, height: double.infinity,),
Container(child: Center(child: Text('qwe')) , color: Colors.deepPurpleAccent, height: double.infinity,),
Container(child: Center(child: Text('qwe')) , color: Colors.green, height: double.infinity,),
Container(child: Center(child: Text('qwe')) , color: Colors.pinkAccent, height: double.infinity,),
],
// shrinkWrap: true,
physics: NeverScrollableScrollPhysics(),
),
)
)
),
)
]
)
);
返回安全区域(
子:列(
儿童:[
文本(“空氣品質"),
容器(
颜色:颜色,蓝色,
孩子:AspectRatio(
方面:4.0/3.0,
子:堆栈(
儿童:[
PageView.builder(
itemBuilder:(上下文,索引){
返回中心(
子项:_bannerPageItems[索引],
);
},
itemCount:_bannerPageItems.length,
onPageChanged:_onBannerChange,
控制器:_pageController,
),
对齐(
对齐:对齐.bottomCenter,
子项:_buildCircleIndicator()
),
对齐(
对齐:对齐。右下角,
子:容器(
页边距:仅限边集(右侧:10,底部:10),
子:文本(
"空氣品質, 高雄市",
样式:TextStyle(字体大小:12,颜色:Colors.white),
)
)
)
],
),
)
),
扩大(
子:容器(
颜色:颜色,蓝色,
子对象:对齐(
对齐:对齐.center,
儿童:测量尺寸(
onChange:(大小){
设置状态(){
_围宽比=(_ratio.width/3)/(size.height/2);
打印(${(_ratio.width/3)/(size.height/2)});
});
},
子项:GridView.count(
交叉轴计数:3,
childAspectRatio:_girdViewItemRatio,
儿童:[
容器(
孩子:内在的(
子:列(
mainAxisAlignment:mainAxisAlignment.start,
儿童:[
扩大(
子:容器(
对齐:对齐。中心,宽度:双。无限,
高度:double.infinity,颜色:Colors.cyane,)
) ,
灵活的(
子:文本(“我的合約,样式:TextStyle(字体大小:18),)
)
]),
)
),
容器(子:中心(子:文本('qwe')),颜色:Colors.yellow,高度:double.infinity,),
容器(子:中心(子:文本('qwe')),颜色:Colors.deepOrange,高度:double.infinity,),
容器(子:中心(子:文本('qwe')),颜色:Colors.deeppurpleCent,高度:double.infinity,),
容器(子:中心(子:文本('qwe')),颜色:Colors.green,高度:double.infinity,),
容器(子:中心(子:文本('qwe')),颜色:Colors.pinkAccent,高度:double.infinity,),
],
//收缩膜:对,
物理学:NeverscrollableScroll物理学(),
),
)
)
),
)
]
)
);
这是我当前的屏幕
我想在这里结束重新录制的空间
多谢各位