zoukankan      html  css  js  c++  java
  • 08ListView动态列表组件 以及循环动态数据

    效果:

    main.dart

    import 'package:flutter/material.dart';
    import 'res/listData.dart';
    /*
          ListView:参数
        scrollDirection:Axis.horizontal:水平列表。Axis.vertical垂直列表
        padding:内边距。
        resolve:组件反向排序
        children:List<Widget>   列表元素
    */
    
    void main() {
      runApp(MyApp());
    }
    
    class MyApp extends StatelessWidget {
      @override
      Widget build(BuildContext context) {
        // TODO: implement build
        return MaterialApp(
          home: Scaffold(
            appBar: AppBar(
              title: Text('flutter demo'),
            ),
            body: HomeContent(),
          ),
        );
      }
    }
    
    class HomeContent extends StatelessWidget {
      //自定义方法:
      // List<Widget> _getData() {
    
      //   // List<Widget> list=new List();
      //   // for(var i=0;i<20;i++){
      //   //   list.add(ListTile(
      //   //     title:Text("我是${i}"),
      //   //   ));
      //   // }
      //   // return list;
    
      //   var temList=listData.map((value){
      //     return ListTile(
      //       leading: Image.network(value["imageUrl"]),
      //       title: Text(value['title']),
      //       subtitle: Text(value["author"]),
      //     );
      //   });
      //   return temList.toList();
    
      // }
    
      // @override
      // Widget build(BuildContext context) {
      //   return ListView(
      //     children:this._getData(),
      //   );
      // }
    
      //使用ListView.builder实现:
      Widget _getListData(context, index) {
        return ListTile(
          leading: Image.network(listData[index]["imageUrl"]),
          title: Text(listData[index]['title']),
          subtitle: Text(listData[index]["author"])
        );
      }
    
      @override
      Widget build(BuildContext context) {
        return ListView.builder(
          itemCount: listData.length,
          itemBuilder: this._getListData,
        );
      }
    }

    res/listData.dart

    List listData=[
      {
        "title":"Candy Shop",
        "author":"Mohamed Chahin",
        "imageUrl":"https://www.itying.com/images/flutter/1.png",
      },
      {
        "title":"Candy Shop",
        "author":"Mohamed Chahin",
        "imageUrl":"https://www.itying.com/images/flutter/2.png",
      },
      {
        "title":"Candy Shop",
        "author":"Mohamed Chahin",
        "imageUrl":"https://www.itying.com/images/flutter/3.png",
      },
      {
        "title":"Candy Shop",
        "author":"Mohamed Chahin",
        "imageUrl":"https://www.itying.com/images/flutter/4.png",
      },{
        "title":"Candy Shop",
        "author":"Mohamed Chahin",
        "imageUrl":"https://www.itying.com/images/flutter/5.png",
      }
    ];
  • 相关阅读:
    vs2015调试慢
    阿里正式发布《Java开发手册》终极版!
    为什么听有些人讲话让人抓狂
    hibernate 映射实例 学生 课程 成绩
    hibernate 树状映射
    hibernate 一对多双向的CURD
    hibernate 多对多双向关联
    hibernate 多对多单向
    hibernate 一对多双向
    hibernate 一对多关联
  • 原文地址:https://www.cnblogs.com/yiweiyihang/p/11446174.html
Copyright © 2011-2022 走看看