我在颤振中使用了一个很长的列表。所有项目都呈现良好,但我也收到以下错误:
RangeError (index): Invalid value: Not in range 0..2, inclusive: 3
以下是我的代码:
@override
Widget build(BuildContext context) {
return Container(
child: getList(),
);
}
下面是我的getList()
方法:
Widget getList (){
List<String> list = getListItems();
ListView myList = new ListView.builder(itemBuilder: (context, index){
return new ListTile(
title: new Text(list[index]),
);
});
return myList;
}
下面是我的getListItem()
方法:
List<String> getListItems(){
return ["Faizan", "Usman", "Naouman"];
}
以下是错误的屏幕截图:
如果您正在使用StreamBuilder
,那么您必须使用以下代码行:
StreamBuilder(
stream: FirebaseFirestore.instance.collection("Tooth")
.orderBy("date", descending: false).snapshots() ,
builder: (BuildContext context, AsyncSnapshot<QuerySnapshot> snapshot){
if(snapshot.hasData)
{
return ListView.builder(
itemCount: snapshot.data.docs.length,
padding: const EdgeInsets.only( top: 20.0),
itemBuilder: (BuildContext context, int index) {
DocumentSnapshot ds = snapshot.data.docs[index];
},
);
}
},
),
当迭代数组时,值用完时,会出现此错误。在ListView
组件缺少itemCount prop的情况下,组件试图继续迭代,但不知道何时完成,因此最终会继续超出范围(数组的长度)。
在为循环运行设置不良的后,您也可能会看到此错误。例如:
var arr = [1, 2, 3];
for (var i=0; i < 4; i++) {
print(arr[i]);
}
此省道代码也会导致范围错误。数组有3项,但我们尝试迭代4次。
您应该将itemCount
参数传递给列表视图。生成器
以允许其了解项目计数
Widget getList() {
List<String> list = getListItems();
ListView myList = new ListView.builder(
itemCount: list.length,
itemBuilder: (context, index) {
return new ListTile(
title: new Text(list[index]),
);
});
return myList;
}
我在颤振中使用Swiper,错误发生在我在列表中添加4个元素时。 我引用了链接抖动错误:RangeError(索引):无效值:不在范围0内。。2,包含:3,但无法在Swiper中实现。
大家好,我是flutter初学者,在练习刷卡解雇选项时,我已经完成了下面提到的代码,删除了一些产品后,我收到了下面的错误,我试图解决这个问题,但不能,请给我提供您的宝贵建议。 下面我附上了代码和错误供您参考。 ======== 由小部件库捕获的异常 ======================================================= 抛出了以下RangeError构建:R
我一直在尝试在listview生成器的末尾添加一个按钮。我试着做这个问题中建议的事情:Flutter:如何在ListView的末尾添加一个按钮小部件。包含其他类型小部件的生成器?。但如果我这样做,我会得到:“RangeError(index):无效值:不在包含范围0..49:50中 我试图寻找问题,也有这个问题,但我找不到一个答案,解决它。
在com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:191)在com.microsoft.sqlserver.jdbc.SQLServerPrearedStatement.setterGetParam(SQLServerPrearedStatement.java:9
在这个应用程序中,我试图获得基于听事件的查询。如果数据库中有任何变化,移动屏幕中的数据将发生变化。下面是从数据库获取数据的代码。 我使用Gridview构建器显示数据。 我在上面代码的第9行中遇到错误。 即使quizStart()中的条件有效,我也会得到范围错误。 有人能帮我解决这个问题吗?
试图用Gradle编译一个Android项目,却出现了一个奇怪的错误。当我运行。尝试了清洁重建,新鲜克隆的repo,不同的分支,同事都能建立AOK。 寻找事物的想法来检查/试图解决这个问题。 *更新:恢复到Gradle 2.11和似乎已经解决了这个问题。* Groovy:2.4.4 Ant:Apache Ant(TM)版本1.9.6编译于2015年6月29日JVM:1.8.0_101(Oracle