经典的Material UI卡片式布局,设计出来的UI很有质感。这个使用起来很简单。
import 'package:flutter/material.dart';
class FlutterCardWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Card(
color: Colors.blueAccent,
//z轴的高度,设置card的阴影
elevation: 20.0,
//设置shape,这里设置成了R角
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.all(Radius.circular(20.0)),),
//对Widget截取的行为,比如这里 Clip.antiAlias 指抗锯齿
clipBehavior: Clip.antiAlias,
semanticContainer: false,
child: getChild(),
);
}
getChild() {
return Container(
color: Colors.deepPurpleAccent,
width: 200,
height: 150,
alignment: Alignment.center,
child: Text(
"Card",
style: TextStyle(fontSize: 28, color: Colors.white),
),
);
}
}
我们可以通过设置shape,来达到各种效果。例如:
borderRadius: BorderRadius.only(
topLeft: Radius.circular(20.0),
topRight: Radius.zero,
bottomLeft: Radius.zero,
bottomRight: Radius.circular(20.0)),
)