一个可以嵌套滚动视图的滚动组件
它的构造函数有两个是必须的参数,一个是headerSliverBuilder,用于构造一个滚动视图的头部,一个是body,它可以是一个ListView组件。headerSliverBuilder和SliverAppBar结合使用,可以实现滚动的时候隐藏AppBar的效果。它同时提供了自定义ScrollController来解决滚动冲突的问题。
class NestedScrollViewDemo extends StatelessWidget {
@override
Widget build(BuildContext context) {
return NestedScrollView(
headerSliverBuilder: (BuildContext context, bool innerBoxIsScrolled) {
return <Widget>[SliverAppBar(title: Text("hello title"))];
},
body: ListView.builder(
itemCount: 50,
itemBuilder: (BuildContext context, int index) {
return Container(
height: 100,
color: Colors.green,
child: Center(
child: Text("hello world $index"),
),
);
}));
}
}
NestedScrollView内部嵌套的组件
可以使用这个controller来控制视图的滚动到特定的位置
用于构造嵌套滚动视图内部的滚动头部
滚动的方向