Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
颤振Listview.builder,RangeError索引不在范围0..1内,包括:2。我怎么修理?_Listview_Dart_Flutter - Fatal编程技术网

颤振Listview.builder,RangeError索引不在范围0..1内,包括:2。我怎么修理?

颤振Listview.builder,RangeError索引不在范围0..1内,包括:2。我怎么修理?,listview,dart,flutter,Listview,Dart,Flutter,我的所有“项目单元格”中都有一个listview.builder。我从我的类列表中获取索引,它给了我一个错误: 引发了另一个异常:RangeError(索引):无效值:不在 范围0..1,包括:2 对于输入字符串:“1277” 对于输入字符串:“1277” 对于输入字符串:“1277” 对于输入字符串:“1277” 对于输入字符串:“1277” 对于输入字符串:“1277” 班级项目{ 最终整数指数; 最后的字符串名; 最后一串关于; 最后一个字符串主题; 最终字符串daysLeft; 最后成

我的所有“项目单元格”中都有一个listview.builder。我从我的类列表中获取索引,它给了我一个错误:

引发了另一个异常:RangeError(索引):无效值:不在 范围0..1,包括:2

对于输入字符串:“1277” 对于输入字符串:“1277” 对于输入字符串:“1277” 对于输入字符串:“1277” 对于输入字符串:“1277” 对于输入字符串:“1277”

班级项目{
最终整数指数;
最后的字符串名;
最后一串关于;
最后一个字符串主题;
最终字符串daysLeft;
最后成员名单;
最后列出任务;
学校项目(this.index、this.name、this.about、this.subject、,
this.daysLeft,this.projectMembers,this.tasks);
}
类用户{
最终整数指数;
最终字符串用户名;
最终字符串描述;
最后的弦乐学校;
用户(this.index、this.school、this.description、this.username);
}
var SchoolProjectOne=SchoolProject(
0,
“历史证明-柏林穆伦”,
“påBerlinmuren och kubrakrisen中的Läs,美国而非苏联
斯卡帕德”
“卡拉·克里吉特·奥赫·赫尔·克里吉特·奥尔德里格·布鲁特·乌特·弗雷特·福克
ädda!“,
“历史”,
“2天”,
[威廉],,
[
学校项目任务(
0,
“Läs Om Berlinmuren”,
"",
“2天”,
[威廉]
),
学校项目任务(
1.
“Ta reda påkubak”,
"",
“2天”,
[威廉]
),
学校项目任务(
2.
“共产主义者vs资本主义”,
"",
“2天”,
[威廉]
),
]
);
Future\u getSchoolProject()异步{
var数据=所有学校项目;
打印(数据);
返回数据;
}
容器(
身高:50,
边距:仅限边集(左:10,右:10,下:12,上:5),
孩子:未来建设者(
未来:_getSchoolProject(),
生成器:(BuildContext上下文,异步快照){
如果(snapshot.data==null){
返回容器(
对齐:alignment.centerLeft,
填充:边缘设置。全部(8),
子对象:循环压缩机指示器(
冲程宽度:2,
),
);
}
否则返回ListView.builder(
滚动方向:轴水平,
填充:边缘设置。全部(5),
项目计数:
snapshot.data[index].projectMembers.length,
itemBuilder:(构建上下文,int索引){
返回容器(
页边距:仅限边集(右:10),
孩子:圆环星(
背景颜色:颜色(0xFFBA68C8),
儿童:
文本(快照.data[index].projectMembers[index].username[0],
样式:TextStyle(颜色:Colors.white),),
),
);
}
);
}
),
)

删除[索引]我认为可以

itemCount:snapshot.data[index].projectMembers.length


itemCount:snapshot.data[index].projectMembers.length,

删除[index]我认为可以

itemCount:snapshot.data[index].projectMembers.length


itemCount:snapshot.data[index].projectMembers.length,

发生这种情况是因为您使用相同的变量
index
,但有不同的
范围集,因此这里有4项:

itemCount:snapshot.data[index].projectMembers.length

但是当你以后使用它的时候

文本(snapshot.data[index].projectMembers[index].username[0],样式:TextStyle(颜色:Colors.white))

因为用户名只有1
[william]
它永远不会存在索引2,所以我认为您可以在那里执行类似的操作


在内部,您可以创建一个文本小部件,并使用fat arrow函数或匿名函数(按索引)在其中添加,如所示的文档中所示。

发生这种情况是因为您使用相同的变量
index
,但有不同的
范围集
,因此这里有4项:

itemCount:snapshot.data[index].projectMembers.length

但是当你以后使用它的时候

文本(snapshot.data[index].projectMembers[index].username[0],样式:TextStyle(颜色:Colors.white))

因为用户名只有1
[william]
它永远不会存在索引2,所以我认为您可以在那里执行类似的操作


在内部,您可以创建一个文本小部件,并使用胖箭头函数或匿名函数(按索引)在其中添加,如所示文档中所示。

谢谢,但如何在每个循环化身中显示每个用户的用户名?是否可以向Listview.builder添加第三个参数(Buildcontext context,int index,int userindex)?谢谢,但是如何在每个循环化身中显示每个用户的用户名?是否可以向Listview.builder(Buildcontext context,int index,int userindex)添加第三个参数?这是什么意思?我需要返回(projectMembers.length)对于每个单元格。问题是我无法显示每个圈化身中每个用户的名称!你是什么意思?我需要为每个单元格返回(projectMembers.length)。问题是我无法显示每个圈化身中每个用户的名称!
class SchoolProject {
 final int index;
  final String name;
 final String about;
  final String subject;
 final String daysLeft;
 final List<User> projectMembers;
 final List<SchoolProjectTask> tasks;

  SchoolProject(this.index, this.name, this.about, this.subject,    

 this.daysLeft, this.projectMembers, this.tasks);
  }

  class User {
  final int index;
 final String username;
 final String description;
 final String school;

User(this.index, this.school, this.description, this.username);
  }

 var SchoolProjectOne = SchoolProject(
  0,
  "Historia Prov - Berlinmuren",
  "Läs in på Berlinmuren och kubrakrisen, hur usa mot soviet       
  skapade"
    "kalla kriget och hur kriget aldrig bröt ut för att folk var        

rädda!",
"History",
"2 Days",
[William],
[
  SchoolProjectTask(
      0,
      "Läs Om Berlinmuren",
      "",
      "2 Days",
      [William]
  ),

  SchoolProjectTask(
      1,
      "Ta reda på Kubakrisen",
      "",
      "2 Days",
      [William]
  ),

  SchoolProjectTask(
      2,
      "Kommunism vs Capitalism",
      "",
      "2 Days",
      [William]
    ),
  ]
 );

  Future<List<SchoolProject>> _getSchoolProject() async {
  var data = allSchoolProjects;
  print(data);
  return data;
  }


 Container(
 height: 50,
  margin: EdgeInsets.only(left: 10, right: 10, bottom: 12, top:5),

 child: FutureBuilder(
  future: _getSchoolProject(),
  builder: (BuildContext context, AsyncSnapshot snapshot) {
  if(snapshot.data == null) {
   return Container(
     alignment: Alignment.centerLeft,
        padding: EdgeInsets.all(8),
              child: CircularProgressIndicator(
              strokeWidth: 2,
                     ),
               );
           }
           else return ListView.builder(
              scrollDirection: Axis.horizontal,
               padding: EdgeInsets.all(5),
               itemCount: 
                  snapshot.data[index].projectMembers.length,
               itemBuilder: (BuildContext context, int index) {
                 return Container(
                 margin: EdgeInsets.only(right: 10),
                 child: CircleAvatar(
                  backgroundColor: Color(0xFFBA68C8),
                      child:   


   Text(snapshot.data[index].projectMembers[index].username[0],
    style: TextStyle(color: Colors.white),),
                  ),
                      );
                      }
                    );
                   }
             ),
                )