我是新来的。所以也许这是一个愚蠢的问题。
我正在创建一个使用随机列表图块的列表视图示例,但是当我在值Item 99之后滚动时,我将得到以下错误提示。
听是我的代码示例。
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
List<String> getListElement() {
var items = List<String>.generate(100, (counter) => "Item $counter");
return items;
}
Widget getListView(context) {
var listItems = getListElement();
var listView = ListView.builder(itemBuilder: (context, index) {
return ListTile(
title: Text(listItems[index]),
);
});
return listView;
}
class RandomListViewExample extends StatelessWidget {
@override
Widget build(BuildContext context) {
// TODO: implement build
return Scaffold(
appBar: AppBar(
title: Text('Listing View Demo'),
backgroundColor: Colors.green,
),
floatingActionButton: FloatingActionButton(
onPressed: null,
child: Icon(Icons.arrow_back),
backgroundColor: Colors.green,
),
body: getListView(context),
);
}
}
答案 0 :(得分:2)
ListView构建器具有itemCount参数来根据一定的长度生成项目。您有100个项目,因此需要将itemCount指定为100。我添加了 itemCount:listItems.length 以根据到listItems列表的长度(即100)。
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
List<String> getListElement() {
var items = List<String>.generate(100, (counter) => "Item $counter");
return items;
}
Widget getListView(context) {
var listItems = getListElement();
var listView = ListView.builder(itemBuilder: (context, index) {
return ListTile(
title: Text(listItems[index]),
);
},itemCount: listItems.length,);
return listView;
}
class RandomListViewExample extends StatelessWidget {
@override
Widget build(BuildContext context) {
// TODO: implement build
return Scaffold(
appBar: AppBar(
title: Text('Listing View Demo'),
backgroundColor: Colors.green,
),
floatingActionButton: FloatingActionButton(
onPressed: null,
child: Icon(Icons.arrow_back),
backgroundColor: Colors.green,
),
body: getListView(context),
);
}
}