【发布时间】:2020-07-31 01:26:34
【问题描述】:
我正在尝试制作一个屏幕,其中所有底部边框(底部的最后一个边框除外)都应具有左右圆形的底部边框。
我可以创建圆形边框,但是,如何隐藏圆形顶部边框的背景颜色并将其连接到前一个小部件?
如下图所示,我有圆形边框,但背景颜色(绿色)出现在蓝色和红色之间。怎么隐藏?
如何实现边界连接?
代码
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
home: Scaffold(
backgroundColor: Colors.green,
appBar: AppBar(
elevation: 0,
automaticallyImplyLeading: true,
actions: <Widget>[
IconButton(
icon: Icon(Icons.search),
onPressed: () {},
),
],
),
body: Column(
mainAxisSize: MainAxisSize.max,
children: <Widget>[
ClipRRect(
borderRadius: BorderRadius.only(
bottomLeft: Radius.circular(15),
bottomRight: Radius.circular(15)),
child: Container(
height: 250.0,
margin: const EdgeInsets.only(
bottom: 6.0), //Same as `blurRadius` i guess
decoration: BoxDecoration(
borderRadius: BorderRadius.only(
bottomLeft: Radius.circular(15),
bottomRight: Radius.circular(15)),
color: Colors.blue,
boxShadow: [
BoxShadow(
color: Colors.grey,
offset: Offset(0.0, 1.0), //(x,y)
blurRadius: 6.0,
),
],
),
),
),
ClipRRect(
borderRadius: BorderRadius.only(
bottomLeft: Radius.circular(15),
bottomRight: Radius.circular(15)),
child: Container(
height: 300.0,
margin: const EdgeInsets.only(
bottom: 6.0), //Same as `blurRadius` i guess
decoration: BoxDecoration(
borderRadius: BorderRadius.only(
bottomLeft: Radius.circular(15),
bottomRight: Radius.circular(15)),
color: Colors.red,
boxShadow: [
BoxShadow(
color: Colors.grey,
offset: Offset(0.0, 1.0), //(x,y)
blurRadius: 6.0,
),
],
),
),
),
],
),
),
);
}
【问题讨论】: