博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Flutter学习之动态ListView
阅读量:4633 次
发布时间:2019-06-09

本文共 1454 字,大约阅读时间需要 4 分钟。

import 'package:flutter/material.dart';void main(){
runApp(listname( item: new List
.generate(1000, (i) => "genarate $i") ));}class listname extends StatelessWidget{
final List
item; listname({
Key key, @required this.item}):super(key:key); @override Widget build(BuildContext context){
return MaterialApp( title: "listname", home:Scaffold( appBar: new AppBar( title: new Text("list name"), backgroundColor: Colors.pinkAccent, ), body: new ListView.builder( itemCount: item.length, itemBuilder: (context,index){
return new ListTile( title: new Text("${item[index]}"), ); } ), ), ); }}

在大多数情况下,我们看到的网页的列表都是动态从数据库里读出来,而不是一成不变的。

那么我们就需要动态列表,List.builder()这个组件方法。

那么在例子中 我们可以在创建对象时,传入有列表生成器(我是从python的列表生成器理解的),即

item: new List
.generate(1000, (i) => "genarate $i")

然后在继承创建类的时候需要接收参数,

final List
item;listname({
Key key, @required this.item}):super(key:key);

使用super调用父类的方法(这点也和python一样)

body: new ListView.builder(          itemCount: item.length,          itemBuilder: (context,index){
return new ListTile( title: new Text("${item[index]}"), ); } ),

最后使用ListView里的builder方法创建动态列表,在itemCount属性设置列表长度。itemBuilder添加内容。

这是效果图:

在这里插入图片描述

转载于:https://www.cnblogs.com/yfc0818/p/11072662.html

你可能感兴趣的文章
angularjs post 跨域
查看>>
Flask——部署
查看>>
php 操作分表代码
查看>>
java2
查看>>
复制图片的一部分
查看>>
调试uIP出现死机问题
查看>>
AttributeError: 'dict' object has no attribute 'status_code'
查看>>
poj2135最小费用最大流经典模板题
查看>>
hdu 4355 Party All the Time (2012 Multi-University Training Contest 6 ) 三分搜索
查看>>
POJ 2528 Mayor's posters(线段树)
查看>>
【转】[退役]纪念我的ACM——headacher@XDU
查看>>
利用STl实现队列
查看>>
android中The connection to adb is down,问题和解决 AndroidEclipseAntXML
查看>>
项目需求分析与建议
查看>>
UVa 10112 - Myacm Triangles
查看>>
给同一个按钮添加单双击事件
查看>>
form
查看>>
powershell输出错误信息到文件
查看>>
VS不显示最近打开的项目
查看>>
wcf客户端捕获异常
查看>>