flutter 循环组件生成方法

简单介绍几种常用循环组件生成的方法

列表循环的原数据

List listViewTabs = ['A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'] ;
list tabs=[{
    
    },{
    
    },{
    
    }];
list tab = ['A','B','C','D','E'}
  1. 遍历获取List的索引值来生成列表
ListView(
	children:tabs.asMap().keys.map((index) {
    
    
	return ........;
	}).toList(),
)

等价于

var ls = tab .map((e) => Text(e)).toList();

ListView(
	children:ls ,
)

  1. flutter组件自带功能,
//以ListView.builder举例,并不代表只有这一种组件
ListView.builder(
      itemBuilder: (context, index) {
    
    
        return .......;
      },
      itemCount: tabs.length,
    ),
  1. for循环生成
//这种最适合封装起来做公共组件使用
static List<Widget> _listData(){
    
    
        List<Widget> list = new List();
        for(int i =0;i<20;i++){
    
    
            list.add(ListTile(
                title:Text("$i")
            ));
        }
        return list;  
    }
  1. 这种方式用的比较少,但是也可以达到目的
ListView(
          children: <Widget>[
            ...listview.map(
              (e) => Text(e),
            )
          ],
        ),



        

猜你喜欢

转载自blog.csdn.net/python4_1/article/details/123426920