我正在尝试在中间顶部创建一个带有曲线的容器,并在曲线内放置一个圆形按钮。它看起来应该类似于 Flutter 中的 Curved Navigation Bar 包,只是没有动画。
我尝试过使用 Stack 和 Positioned,但是,Flutter 并没有像我想象的那样转换它。
class CurvedContainerWithButtonAtTopCenter extends StatelessWidget{
@override
Widget build(BuildContext context) {
// TODO: implement build
return Scaffold(
body: Container(
height: 200.0,
child: Stack(
children: <Widget>[
Positioned(
top: 30.0,
right: 0.0,
left: 0.0,
child: Container(
height: 170.0,
width: MediaQuery.of(context).size.width,
margin: EdgeInsets.symmetric(horizontal: 20.0, vertical:
40.0),
color: Colors.blue,
)),
Container(
height: 60.0,
width: 60.0,
decoration: BoxDecoration(
color: Colors.white,
shape: BoxShape.circle),
alignment: FractionalOffset.center,
child: Container(
margin: EdgeInsets.all(10.0),
child: FloatingActionButton(),
)
)
],
)
)
);
}
}
我希望 Container 占据整个宽度并定位得更低一些。圆圈应位于容器顶部边框的中心。Circle 还应该包含一个 FloatingActionButton。