physics:滚动的视图如何响应用户的输入。 shrinkWrap:滚动方向的滚动视图内容是否应该由正在查看的内容所决定。 padding:四周的空白区域。 gridDelegate:控制GridView中子节点布局的delegate。 cacheExtent:缓存区域。 3.5.2 源码 @override Widget build(BuildContext context) { final List<Widget> slivers = buildSlivers...
shrinkWrap:使GridView的高度适应其内容,为true时占用其内容所需的最小空间,为false时占用尽可能多的空间。 注意:如果你有一个ListView或SingleChildScrollView并且想在其中包含一个GridView,一般设置shrinkWrap: true确保GridView的高度仅基于其内容大小,而不是尝试滚动,或者包含在固定高度的容器中再或者放在Expanded中使其...
接下来的构造函数叫做GridView.custom,因为叫做custom,所以这个构造函数的SliverGridDelegate和SliverChildDelegate都是可以自定义的,也就是说这两个参数都可以从外部传入,所以这两个参数都是必须的: required this.gridDelegate, required this.childrenDelegate GirdView还有一个构造函数叫做GridView.count,这里的count是指Gri...
shrinkWrap常用于内容大小不确定情况,如果滚动视图(ListView/GridView/ScrollView等)没有收缩包装,则滚动视图将扩展到允许的最大大小。如果是无界约束,则shrinkWrap必须为true。 primary如果为true,即使滚动视图没有足够的内容来支撑滚动,滚动视图也是可滚动的。否则,默认为false情况下,只有具有足够内容的用户才能滚动视图。
shrinkWrap:是否根据子组件的总长度来设置ListView的长度,默认值为 false,默认情况下, ListView 会在滚动的方向尽可能的占用更多的空间。当ListView在一个无边界(滚动方向上)的容器中时,shrinkWrap必须为 true addAutomaticKeepAlives:该属性表示是否将列表项(子组件) 包裹在 AutomaticKeepAlive 组件中; 典型的,在一个...
来看下GridView构造函数(已省略不常用属性): GridView({ Key key, Axis scrollDirection = Axis.vertical, bool reverse = false, ScrollController controller, ScrollPhysics physics, bool shrinkWrap = false, EdgeInsetsGeometry padding, @required this.gridDelegate, ...
GridView有很多个构造函数,首先是包含所有参数的全参数构造函数: GridView({ Key? key,AxisscrollDirection=Axis.vertical,boolreverse=false, ScrollController? controller, bool? primary, ScrollPhysics? physics,boolshrinkWrap=false, EdgeInsetsGeometry? padding, ...
GridView.builder( ... @required SliverGridDelegate gridDelegate, @required IndexedWidgetBuilder itemBuilder,)其中itemBuilder为子widget构建器。具体用法如下:GridView.builder(//将所有子控件在父控件中填满 shrinkWrap:true, padding:EdgeInsets.only(left:10.0,right:10.0, top:10.0, bottom:10.0...
shrinkWrap 常用于内容大小不确定情况,如果滚动视图(ListView/GridView/ScrollView 等)没有收缩包装,则滚动视图将扩展到允许的最大大小。如果是无界约束,则 shrinkWrap 必须为 true。 primary 如果为 true,即使滚动视图没有足够的内容来支撑滚动,滚动视图也是可滚动的。否则,默认为 false 情况下,只有具有足够内容的用户才...
1.GridView GridView({ Axis scrollDirection=Axis.vertical, bool reverse=false, ScrollController controller, bool primary, ScrollPhysics physics, bool shrinkWrap=false, EdgeInsetsGeometry padding, @requiredSliverGridDelegate gridDelegate,//控制子widget l...