https://www.cnblogs.com/lxlx1798/p/11115573.html
什么是CustomScollView
https://blog.csdn.net/yechaoa/article/details/90701321 CustomScrollView可以实现组合滑动 并且经常搭配Sliver系列组件来自定义滚动模型
常见的Sliver
Sliver 是 Flutter 中用于构建可滚动视图的基本构建块之一。Sliver 是可滚动区域中的一小部分,具有固定的大小和位置,可以根据需要动态加载和卸载。Sliver 通常用于创建高性能、高度灵活的可滚动视图,例如列表、网格、瀑布流等。 在 Flutter 中,有许多不同类型的 Sliver 组件,每个组件都有特定的作用和用途。下面是一些常见的 Sliver 组件:
- SliverAppBar:一个带有滚动效果的应用栏,可以在向上滚动时隐藏,并在向下滚动时显示。
- SliverList:将子组件放置在一个垂直列表中,可以根据需要动态加载和卸载列表项。
- SliverGrid:将子组件放置在一个网格中,可以根据需要动态加载和卸载网格项。
- SliverPadding:为子组件提供填充,以使它们与其他 Sliver 组件的大小和位置保持一致。
- SliverToBoxAdapter:将一个普通的组件包装成一个 Sliver 组件,以便将其放置在 CustomScrollView 中。
SliverAppBar
什么是sliverappbar sliverappbar类以于android中的collapsingtoolbarlayout
,可以轻松实现页面头部展开,合并的效果。 与appbar大部分的属性重合,相当于appbar的加强版。
java
const SliverAppBar({
Key key,
this.leading,//左侧的图标或文字,多为返回箭头
this.automaticallyImplyLeading = true,//没有leading为true的时候,默认返回箭头,没有leading且为false,则显示title
this.title,//标题
this.actions,//标题右侧的操作
this.flexibleSpace,//可以理解为SliverAppBar的背景内容区
this.bottom,//SliverAppBar的底部区
this.elevation,//阴影
this.forceElevated = false,//是否显示阴影
this.backgroundColor,//背景颜色
this.brightness,//状态栏主题,默认Brightness.dark,可选参数light
this.iconTheme,//SliverAppBar图标主题
this.actionsIconTheme,//action图标主题
this.textTheme,//文字主题
this.primary = true,//是否显示在状态栏的下面,false就会占领状态栏的高度
this.centerTitle,//标题是否居中显示
this.titleSpacing = NavigationToolbar.kMiddleSpacing,//标题横向间距
this.expandedHeight,//合并的高度,默认是状态栏的高度加AppBar的高度
this.floating = false,//滑动时是否悬浮
this.pinned = false,//标题栏是否固定
this.snap = false,//配合floating使用
})