Flutter 组件之 SliverList
1.简介
和ListView差不到
2.属性
- delegate:两种渲染方式SliverChildListDelegate/SliverChildBuilderDelegate
3.使用
-
SliverChildListDelegate属性/SliverChildBuilderDelegate属性:这两个唯一的区别在于前置用的时数组,后者用的是builder
childCount:渲染多少个组件,(只有SliverChildBuilderDelegate里有这个属性)
addAutomaticKeepAlives:意思是在列表元素不可见后可以保持元素的状态,从而在再次出现在屏幕的时候能够快速构建。这其实是一个拿空间换时间的方法,会造成一定程度得内存开销。可以设置为 false 关闭这一特性。缺点是滑动过快的时候可能会出现短暂的白屏(实际会很少发生)
addRepaintBoundaries: 是将列表元素使用一个重绘边界(Repaint Boundary)包裹,从而使得滚动的时候可以避免重绘。而如果列表很容易绘制(列表元素布局比较简单的情况下)的时候,可以关闭这个特性来提高滚动的流畅度,
addSemanticIndexes:是否给每个组件加索引,
semanticIndexCallback:
semanticIndexOffset: , 提供语义信息的孩子的数量
- 第二种写法