list - 尝试填写类(class)列表

标签 list class flutter dart

我真的很抱歉,我是一个初学者。
最后,当应该是8个不同的名称/角色时,我只有8个具有相同名称/位置的TimeCardDayStrip列表。
我不明白自己在做什么错:
非常感谢你

'''
class TimeCardDayStrip {
  String name, position;
  DateTime day;

  @override
  String toString(){
    return '{ $this.name, $this.position }';
  }
}

void main() {
  var tcds = TimeCardDayStrip();
  var listOfTcds = [];
  List<String> names, roles;
   names = ["Michael", "Gunnell", "Byrne", "Aspromonte", "Davis", "Adam Jordan", "Mirko"];
  roles = ["Director", "Vice", "President", "1ST", "KEY 2ND", "2ND", "BASECAMP PA", "PA", " PA", "Add'l PA"];

  for (int i = 0; i < names.length; i++) {
    tcds.name = names[i];
    tcds.position = roles[i];
    listOfTcds.add(tcds);
    // checking the list as it creates
    print(listOfTcds[i].name+' is '+listOfTcds[i].position);
  }
  //print the list of card to check
  print('print the list of time card to check');
  for (int x = 0; x < listOfTcds.length; x++){
    print (listOfTcds.elementAt(x).name);
  }
}
'''

最佳答案

如果您只想打印每个名称:
将其放入循环中(您应该在每个循环中创建新对象,而不是更新相同的对象)

 for (int i = 0; i < names.length; i++) {

    var tcds = TimeCardDayStrip();

    tcds.name = names[i];
    tcds.position = roles[i];
    listOfTcds.add(tcds);

    // checking the list as it creates
    print('${listOfTcds[i].name} is ${listOfTcds[i].position}');
}

然后再
 listOfTcds[x].name 

如果要显示内容:
  @override
  Widget build(BuildContext ctx) {
    return ListView.builder(
            itemCount: listOfTcds.length,
            itemBuilder: (context, index) {
              return CustomTile(item: listOfTcds[index]);
            },
          );
  }

关于list - 尝试填写类(class)列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61965298/

相关文章:

python - 列表中删除、删除和弹出的区别

C# 打印字符串数组列表

c# - 如何在另一种类型的列表列表中选择所有不同的字符串?

java - java的equals()方法

flutter - 无法通过调用 ScaffoldState().removeCurrentSnackBar() 删除当前 snackbar

flutter - 如何在 Flutter 中一段时间​​不活动后执行函数

c# - F# 列表到 C# IEnumerable : most efficient method?

javascript - 自定义类的服务器端 onchange 事件

jquery - 如何使用 jQuery 添加和删除事件类?

android - Flutter 用户应该运行 'flutter pub get' 而不是 'pub get'