flutter的listview动态数据加载

开发中经常使用到的一个功能,需要从服务器上获取数据并加载到listview上,动态显示。

先看看效果:

class HomeContent extends StatelessWidget{

  // 第一种方案 
  // List<Widget> list = List.filled(20, ListTile(title: Text("zheng"),subtitle: Text("ci"),));

// 第二种方案
  List<Widget> _getData(){
      var templist = listData.map((value){
      return ListTile(
        leading: Image.network(value['imageUrl']),
        title: Text(value['title']),
        subtitle: Text(value['author']),
      );
    });
      return templist.toList();
  }

  @override
  Widget build(BuildContext context) {
    // TODO: implement build
    return ListView(
      children: this._getData(),
    );
  }

// 第三种方案
class HomeContent extends StatelessWidget{

  List<Widget> listviews = List.filled(
      20,
      ListTile(
        leading: Image.network('https://www.itying.com/images/flutter/2.png'),
        title: Text("zheng"),
        subtitle: Text("ci"),)
  );

  @override
  Widget build(BuildContext context) {
    // TODO: implement build
    return ListView.builder(
      itemBuilder: (context,index){
        return listviews[index];
      },
      itemCount: listviews.length,
    );
  }
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容