所以这是交易。我在一个名为 WaveClipper 的类中创建了(有点)一个形状像波浪的自定义剪辑器
削波器类:
class WaveClipper extends CustomClipper<Path> {
@override
Path getClip(Size size) {
var path = Path();
path.lineTo(0, 220);
path.quadraticBezierTo(size.width / 4, 160 , size.width / 2, 175);
path.quadraticBezierTo(3 / 4 * size.width, 190, size.width, 130);
path.lineTo(size.width, 0);
path.close();
return path;
}
@override
bool shouldReclip(CustomClipper<Path> oldClipper) {
return false;
}
}
每当我使用脚手架显示它时,它都显示得很好,但是当我尝试将它推到位于 CustomScrollView 内的 SliverListView 中时,什么也没有出现,也没有错误。剪辑器是否在内容下方?以及如何显示它。
我试图展示的快船:
Stack(
children: [
ClipPath(
clipper: WaveClipper(),
child: Container(
color: Colors.cyanAccent,
))
],
),
我试图展示它的地方:
Scaffold(
appBar: AppBar(
backgroundColor: Colors.white,
elevation: 0.0,
iconTheme: IconThemeData(
color: Colors.cyanAccent,
),
),
backgroundColor: Colors.white,
body: CustomScrollView(
physics: const BouncingScrollPhysics(),
slivers: [
SliverList(
delegate: SliverChildListDelegate([
//here
//there rest of the content (mostly buttons)
]),
),
],
),
)
任何帮助表示赞赏,并感谢您抽出宝贵的时间。