我的页面中有3个部分蓝绿色和红色部分
我想要的是如何使红色部分可滚动,同时另一部分将卡在适当的位置
这是我的小部件树
Container(
child: Stack(
alignment: Alignment.topCenter,
children: [
Column(
children: [
Container(
height: size.height * .12,
decoration: BoxDecoration(color: kPrimaryColor),
),
Container(
height: size.height * .12,
decoration: BoxDecoration(color: Colors.green),
),
// I want this part to be scrollable
Column(
children: [
Container(
height: size.height * 2,
color: Colors.red,
),
],
)
],
),
Positioned(
top: size.height * .12 - 45,
child: ClipRRect(
borderRadius: BorderRadius.circular(360),
child: Container(
height: 90,
width: 90,
padding: EdgeInsets.all(5),
decoration: BoxDecoration(
shape: BoxShape.circle, color: Colors.green),
child: ClipRRect(
borderRadius: BorderRadius.circular(360),
child: Image.network(defualtImage, fit: BoxFit.cover)),
),
)),
],
),
);
我已经试过包装我的红色Column
小部件SingeChildScrollView
和NestedScrollView
,但似乎没有任何工作。
Column
用SingleChildScrollView
+Expanded
小部件包装要滚动的第3个小部件。
Expanded(
child: SingleChildScrollView(child: Your 3rd column widget with Red background container),
),
太简单了,谢谢,我仍然不了解这些小部件在颤动中的行为。
基本上,您只有一个“列”,而在“其他3个”小部件中。Expanded指示采用最大高度(如果使用Column小部件),SingleChildScrollView使其可滚动!
但是如何用容器包装Column小部件并将其高度设置为double.infinity也可以呢?
因为Column不能具有无限的视口,所以它是行不通的。所以您不能为column指定无限的高度。