ffBody method
普通页面建议用CustomScrollView布局,可以配合默认刷新控件一起使用
Implementation
@override
Widget? ffBody(BuildContext context) {
List<Widget> slivers = [
SliverToBoxAdapter(
child: Container(
color: Colors.black,
child: FFLineContainer(
children: [
//1
Material(
child: InkWell(
onTap: () {},
child: Container(
height: 100,
width: 100,
child: Text("InkWell单击事件"),
),
),
color: Colors.yellow,
),
//2
Material(
//INK可以实现装饰容器,实现矩形 设置背景色
child: Ink(
color: Colors.purple,
child: InkWell(
onTap: () {},
child: Container(
width: 300.0,
height: 50.0,
decoration: BoxDecoration(
// color: Colors.purple,
borderRadius: BorderRadius.all(Radius.circular(30.0)),
),
child: Text(
"登录",
style: TextStyle(color: Colors.white, fontSize: 16.0),
),
),
),
),
),
//3
Material(
child: Ink(
//设置背景
decoration: BoxDecoration(
color: Colors.purple,
borderRadius: BorderRadius.all(Radius.circular(30.0)),
),
child: InkResponse(
borderRadius: BorderRadius.all(Radius.circular(30.0)),
//点击或者toch控件高亮时显示的控件在控件上层,水波纹下层
// highlightColor: Colors.purple[800],
//点击或者toch控件高亮的shape形状
highlightShape: BoxShape.rectangle,
//.InkResponse内部的radius这个需要注意的是,我们需要半径大于控件的宽,如果radius过小,显示的水波纹就是一个很小的圆,
//水波纹的半径
radius: 300.0,
//水波纹的颜色 设置了highlightColor属性后 splashColor将不起效果
splashColor: Color.fromRGBO(0, 0, 0, 0.01),
//true表示要剪裁水波纹响应的界面 false不剪裁 如果控件是圆角不剪裁的话水波纹是矩形
containedInkWell: true,
onTap: () {
print('click');
},
child: Container(
//不能在InkResponse的child容器内部设置装饰器颜色,否则会遮盖住水波纹颜色的,containedInkWell设置为false就能看到是否是遮盖了。
width: 300.0,
height: 50.0,
//设置child 居中
alignment: Alignment(0, 0),
child: Text(
"登录",
style: TextStyle(color: Colors.white, fontSize: 16.0),
),
),
),
),
),
],
),
),
),
];
return CustomScrollView(slivers: slivers);
}