当前位置: 首页 > news >正文

宁波附近的seo推广购物网站seo关键词定位

宁波附近的seo推广,购物网站seo关键词定位,wordpress友情链接代码,谷歌优化教程文章目录 概念介绍实现方法示例代码 我们在上一章回中介绍了dart语言中的 setter/getter相关的内容,本章回中将介绍 局部动态列表.闲话休提,让我们一起Talk Flutter吧。 概念介绍 在正常情况下列表位于整个页面中,而且可以在整个页面中滚动…

文章目录

  • 概念介绍
  • 实现方法
  • 示例代码

我们在上一章回中介绍了dart语言中的 setter/getter相关的内容,本章回中将介绍 局部动态列表.闲话休提,让我们一起Talk Flutter吧。

概念介绍

在正常情况下列表位于整个页面中,而且可以在整个页面中滚动,我们在这里说的局部动态列表是指在页面中的某一部分区域中显示一个列表,列表的滚动范围只限于这个局部区域,我们把这样的列表叫作局部动态列表。在实际项目中这样的场景比较多,本章回中将详细介绍如何实现局部动态列表。

实现方法

我们首先使用使用Column组件划分布局,然后把ListView当作该组件的子组件,这样就创建好了局部动态列表。

这个步骤看着简单,不过还有一些细节需要说明,不然这样的程序会有编译错误:Failed assertion: line 1966 pos 12: 'hasSize。其在原因是Column要求子组件有固定的大小,而子组件ListView没有固定的大小。解决方法有两个,详细如下:

  • 在ListView外面嵌套一个容器组件,比如Container,并且指定容器的高度,相当于间接指定了ListView的高度。
  • 使用shrinkWrap属性,该属性默认值为false.将它设置为true.表示让ListView拥有一个可扩展的最大值。相当于指定了ListView的高度。

上面的两种方法都可以,不过还有一些细节需要解释,详细如下:

  • 在使用第一种方法时还有一些特殊情况需要注意,为了显示ListView中更多的内容,把它外层嵌套的容器高度放大一些,这样做会有超过屏幕高度的风险,此时可以容器的外层再嵌套一个可滚动的组件,比如SingleChildScrollView,这样即使显示的内容超过屏幕了也可以滚动显示。
  • 在使用第二个方法时,主要是不好理解shrinkWrap属性的功能,大家可以查看源代码中的注释,这个注释写的比较清楚,详细如下:
  /// {@template flutter.widgets.scroll_view.shrinkWrap}/// Whether the extent of the scroll view in the [scrollDirection] should be/// determined by the contents being viewed.////// If the scroll view does not shrink wrap, then the scroll view will expand/// to the maximum allowed size in the [scrollDirection]. If the scroll view/// has unbounded constraints in the [scrollDirection], then [shrinkWrap] must/// be true.////// Shrink wrapping the content of the scroll view is significantly more/// expensive than expanding to the maximum allowed size because the content/// can expand and contract during scrolling, which means the size of the/// scroll view needs to be recomputed whenever the scroll position changes.////// Defaults to false.////// {@youtube 560 315 https://www.youtube.com/watch?v=LUqDNnv_dh0}/// {@endtemplate}final bool shrinkWrap;

示例代码

介绍完局部动态列表的实现方法后,我们通完示例代码来演示,详细如下:

Column(children: [const Image(width: double.infinity,height: 200,image: AssetImage("images/ex.png"),fit:BoxFit.fill, ),const Text('data sample'),Container(decoration:BoxDecoration(color: Colors.green,borderRadius: BorderRadius.circular(8)) ,height: 200,child: ListView.builder(///column中嵌套ListView会报hassize类型的的错误,即使指定list数量也不行///Failed assertion: line 1966 pos 12: 'hasSize///解决方法1:在ListView外层嵌套一个容器,指定容器大小来限定ListView的大小。///该方法相当于创建了个局部List,容器内的List可以自由滚动,也可以通过physics属性让它不滚动///解决方法2:使用shrinkWrap属性,itemCount: 10,// physics: const NeverScrollableScrollPhysics(),itemBuilder: (context,index){return const Card(child: Padding(padding: EdgeInsets.all(10),child: Text("List item"),),);},),),Container(color: Colors.lightBlue,child: ListView.builder(///用来控制List内部的边距,包含head和tail,如果去掉head和tail可以使用only方法padding: const EdgeInsets.all(10),shrinkWrap: true,physics: const NeverScrollableScrollPhysics(),itemCount: 20,itemBuilder:(context,index){return const Card(color: Colors.orange,child: Padding(///这个padding可以控制card的大小,也就是listItem的大小padding: EdgeInsets.all(8),child: Text('Another List Item'),),);},),),],
),

上面的示例代码中通过两个ListView演示了两种解决方法,大家可以去掉外层的容器,或者修改shrikWrap属性值来看看程序出错时的样子,然后按照我们介绍的方法来解决错误,这样做的效果比较好,建议大家自己动手去实践。

看官们,关于"局部动态列表"相关的内容就介绍到这里,欢迎大家在评论区交流与讨论!

http://www.bjxfkj.com.cn/article/110477.html

相关文章:

  • 兰州做网站哪家好python基础教程电子版书籍
  • 京东网站建设流程向网站服务器上传网页文件下载
  • 东莞网络推广网站邢台网站建设邢台
  • 哈尔滨网站建设维护深圳有名的品牌设计公司
  • 部门网站建设注意事项室内效果图代做网站
  • 海淀网站建设枣庄白银网站建设公司
  • 餐饮手机微网站怎么做wordpress 国外在访问
  • 房地产开发建设网站开发微信小程序商城
  • 猪八戒做网站怎么赚钱Pk10网站建设多少钱
  • vps怎么添加网站网站模板下载
  • 贵州省建设厅官网网站心雨在线高端网站建设创新
  • 门户网站建设构架郑州电商网站建设
  • 网站建设电话销售技巧网页源代码提取文件
  • 蓝色的网站为什么选择做汉服网站
  • 做代理网站怎么提交网站
  • 建立主题网站的知识点2018做网站的软件
  • 房地产公司网站建设pptwordpress 信息分析
  • 天猫网站设计东营网格通二维码
  • 如何搜网站去黄山旅游攻略和费用
  • 小型网站建设如何做网站浏览pdf
  • 电子商务网站建设及其相关法律问题网站建设需要哪些资料
  • 院系网站建设具体要求网站品牌建设功能
  • 网站改版的费用工信部网站备案变更
  • 网站上做镜像是什么意思以个人名义做地方门户网站
  • 国外做兼职的网站设计师一般是什么学历
  • 二手车 网站开发钢铁网站建设
  • 免费响应式模板网站上海app系统开发
  • 做网站售后好的公司大连旅顺口
  • 网站建设icp备案微信公众号文章怎么转换wordpress
  • 湛江公司网站建设公司及企业如何建立自己的购物网站