效果:

main.dart

  1. import 'package:flutter/material.dart';
  2. import 'res/listData.dart';
  3. /*
  4. ListView:参数
  5. scrollDirection:Axis.horizontal:水平列表。Axis.vertical垂直列表
  6. padding:内边距。
  7. resolve:组件反向排序
  8. children:List<Widget> 列表元素
  9. */
  10.  
  11. void main() {
  12. runApp(MyApp());
  13. }
  14.  
  15. class MyApp extends StatelessWidget {
  16. @override
  17. Widget build(BuildContext context) {
  18. // TODO: implement build
  19. return MaterialApp(
  20. home: Scaffold(
  21. appBar: AppBar(
  22. title: Text('flutter demo'),
  23. ),
  24. body: HomeContent(),
  25. ),
  26. );
  27. }
  28. }
  29.  
  30. class HomeContent extends StatelessWidget {
  31. //自定义方法:
  32. // List<Widget> _getData() {
  33.  
  34. // // List<Widget> list=new List();
  35. // // for(var i=0;i<20;i++){
  36. // // list.add(ListTile(
  37. // // title:Text("我是${i}"),
  38. // // ));
  39. // // }
  40. // // return list;
  41.  
  42. // var temList=listData.map((value){
  43. // return ListTile(
  44. // leading: Image.network(value["imageUrl"]),
  45. // title: Text(value['title']),
  46. // subtitle: Text(value["author"]),
  47. // );
  48. // });
  49. // return temList.toList();
  50.  
  51. // }
  52.  
  53. // @override
  54. // Widget build(BuildContext context) {
  55. // return ListView(
  56. // children:this._getData(),
  57. // );
  58. // }
  59.  
  60. //使用ListView.builder实现:
  61. Widget _getListData(context, index) {
  62. return ListTile(
  63. leading: Image.network(listData[index]["imageUrl"]),
  64. title: Text(listData[index]['title']),
  65. subtitle: Text(listData[index]["author"])
  66. );
  67. }
  68.  
  69. @override
  70. Widget build(BuildContext context) {
  71. return ListView.builder(
  72. itemCount: listData.length,
  73. itemBuilder: this._getListData,
  74. );
  75. }
  76. }

res/listData.dart

  1. List listData=[
  2. {
  3. "title":"Candy Shop",
  4. "author":"Mohamed Chahin",
  5. "imageUrl":"https://www.itying.com/images/flutter/1.png",
  6. },
  7. {
  8. "title":"Candy Shop",
  9. "author":"Mohamed Chahin",
  10. "imageUrl":"https://www.itying.com/images/flutter/2.png",
  11. },
  12. {
  13. "title":"Candy Shop",
  14. "author":"Mohamed Chahin",
  15. "imageUrl":"https://www.itying.com/images/flutter/3.png",
  16. },
  17. {
  18. "title":"Candy Shop",
  19. "author":"Mohamed Chahin",
  20. "imageUrl":"https://www.itying.com/images/flutter/4.png",
  21. },{
  22. "title":"Candy Shop",
  23. "author":"Mohamed Chahin",
  24. "imageUrl":"https://www.itying.com/images/flutter/5.png",
  25. }
  26. ];

08ListView动态列表组件 以及循环动态数据的更多相关文章

  1. React(0.13) 定义一个动态的组件(函数作为动态的值)

    <!DOCTYPE html> <html> <head> <title>React JS</title> <script src=& ...

  2. Android(java)学习笔记186:对ListView等列表组件中数据进行增、删、改操作

    1.ListView介绍 解决大量的相似的数据显示问题 采用了MVC模式: M: model (数据模型) V:  view  (显示的视图) C: controller 控制器 入门案例: acit ...

  3. Android(java)学习笔记129:对ListView等列表组件中数据进行增、删、改操作

    1. ListView介绍 解决大量的相似的数据显示问题 采用了MVC模式: M: model (数据模型) V:  view  (显示的视图) C: controller 控制器 入门案例: aci ...

  4. T-SQL Recipes之生成动态列表数据

    Problem 首先什么是动态列表?举个示例,假设你想输出以逗号分隔的IDs,如: 1,45,67,199,298 Solution 生成动态列表数据在我们生活场景中很常见,比如在 Dynamic P ...

  5. ajax获取动态列表数据后的分页问题

    ajax获取动态列表数据后的分页问题 这是我在写前台网站时遇到的一个分页问题,由于数据是通过ajax的方式来请求得到的,如果引入相应的js文件来做分页,假如只是静态的填放数据到列表各项内容中(列表条数 ...

  6. vue:使用不同参数跳转同一组件,实现动态加载图片和数据,以及利用localStorage和vuex持久化数据

    需求:通过不同的参数复用同一组件,实现动态加载数据和图片,同时,在页面刷新时,图片依旧可以加载成功. 过程出现的bug和问题: 1.使用params传参后,再次刷新页面,参数丢失导致数据无法再次加载 ...

  7. flutter动态列表

    在前面一篇总结flutter里面的列表组件ListView的时候,一直都是使用的静态数据,但是在实际的运用过程中,数据都是从后台获取的动态数据,不能再像前面那样写静态数据了,下面模拟一下如果使用动态数 ...

  8. 【Docker】数据库动态授权组件在Kubernetes集群下的测试过程记录

    背景 我们都知道出于安全性考虑,生产环境的权限一般都是要做最小化控制,尤其是数据库的操作授权,更是重中之重. 博主所在公司使用的是Kubernetes(k8s)进行的集群容器管理,因为容器发布时的IP ...

  9. Vue动态创建组件方法

    组件写好之后有的时候需要动态创建组件.例如: 编辑文章页面,正文是一个富文本编辑器,富文本编辑器是一个第三方的组件,点击添加章节的时候需要动态的创建一个富文本编辑器这个时候怎么处理呢. 富文本编辑器也 ...

随机推荐

  1. Go语言——值方法 & 指针方法

    1 package main import ( "fmt" "sort" ) type SortableStrings []string type Sortab ...

  2. 【2017-06-29】在登录页面自动返回上次请求页面、Js获取table中的行数与列数

    一.在登录页面自动返回上次请求页面 Request.UrlReferrer比如 if (Request.UrlReferrer != null) { //如果能获取来路地址 Response.Redi ...

  3. 控制台警告libpng warning: iCCP: known incorrect sRGB profile

    用控制台测试数据的时候,出现的这个问题.虽然只是一个警告但是看着就是不太舒服 ,见下图 弄了好长时间,无意间切换个输入法,原先使用的是QQ输入法 切换成微软五笔以后,竟然好了 好了 好了

  4. 关闭安装包更新使用YUM在Linux中(RHEL / CentOS / Fedora)

    YUM (Yellowdog Updater Modified)  是一个开源的命令行工具,以及基于图形的软件包管理工具, 用于基于 RPM (RedHat Package Manager) 的 Li ...

  5. 模拟一个http 请求的json格式报文,带 rsa 签名操作

    一.对需要加密的字符串,定义RsaSignUnsign 类,代码如下: 实现了: 1.实现了生成新的pubkey.pri_key方法: 2.将新生成的keys 写入文件: 3.从文件获取pubkey. ...

  6. python 2.7安装pygame报错解决办法pygame-1.9.4-cp27-cp27m-win_amd64.whl is not a supported wheel on this platform.

    python下载python安装包 https://www.lfd.uci.edu/~gohlke/pythonlibs/#pygame 下载完后进入cmd命令行执行安装,报错: pygame-1.9 ...

  7. phpstudy如何配置域名

    其他选项菜单=>站点域名管理=>站点管理填入信息后点击“新增”按钮=>点击“保存设置并生成配置文件”按钮=>打开hosts=>127.0.0.1 www.gohosts. ...

  8. linux实操_shell位置参数变量

    基本语法: 脚本内容: 输出效果:

  9. [ES2019] Use JavaScript ES2019 flatMap to Map and Filter an Array

    ES2019 introduces the Array.prototype.flatMap method. In this lesson, we'll investigate a common use ...

  10. POJ3336 Making the Grade

    思路:DP 提交:1次 题解: 最开始我们可以想到,分两种序列都做一遍. 先来证明一个结论: 存在一种构造,使 \(B\) 中的数都在 \(A\) 中出现过,且这样不劣. (目的是为了转化暂时看起来虚 ...