Pan*_*dhu 4 flutter flutter-layout
我正在考虑实施以下设计。
如何在上图中实现线上的三角形凹凸?我是扑扑的新手,对如何开始这件事一无所知。
很简单,您只需要了解如何使用剪刀即可。
这是如何:
你需要使用 ClipPath
@override
Widget build(BuildContext context) {
return Scaffold(
backgroundColor: Colors.lightGreen,
appBar: AppBar(
title: Text("test"),
backgroundColor: Colors.deepOrange,
),
body: Center(
child: Column(
mainAxisSize: MainAxisSize.min,
mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center,
children: <Widget>[
Container(
width: double.infinity,
height: 200,
color: Colors.red,
child: Center(
child: Text("Download"),
),
),
ClipPath(
clipper: TriangleClipper(),
child: Container(
color: Colors.red,
height: 10,
width: 20,
),
)
],
)),
);
}
Run Code Online (Sandbox Code Playgroud)
并添加您的自定义剪刀:
class TriangleClipper extends CustomClipper<Path> {
@override
Path getClip(Size size) {
final path = Path();
path.lineTo(size.width, 0.0);
path.lineTo(size.width / 2, size.height);
path.close();
return path;
}
@override
bool shouldReclip(TriangleClipper oldClipper) => false;
}
Run Code Online (Sandbox Code Playgroud)
就是这样,您将获得相同的结果。
| 归档时间: |
|
| 查看次数: |
1873 次 |
| 最近记录: |