颤振列表值未更新

问题描述 投票:0回答:1

我遇到了麻烦,我的列表没有及时更新,我有一个for循环来填充机器代码,并且在我的列表_ machines中,它从Web服务接收数据,但其中包含代码,但是当我尝试将该代码分配给我的其他列表machineDetails,它不传递值,

这里是代码:

 Future<void> _registerTime(int index) async {
try {
  setState(() {
    _loading = true;
  });

  String res = await gruposRepo.timeRegisterWorks(widget.worker.toString(),
      widget.work, widget.product, widget.task, _machines[index].vCodigo);

  print(res);

  print("MachineDetails Lenght RegisterTime: ${machineDetails.length}");

  for (int i = 0; i < _machines.length; i++) {
    print('Machines $i code: ${_machines[i].vCodigo}');
    machineDetails[i]?.code = _machines[i].vCodigo;
    print('MachineDetails $i code: ${machineDetails[i]?.code}');

    if (res == '1') {
      machineDetails[i]?.working = true;
    } else if (res == '2') {
      machineDetails[i]?.working = false;
    }
  }

  print(machineDetails[index]?.working);

  showDialog(
      context: context,
      builder: (context) {
        return AlertDialog(
          title: Text(Translations.of(context).trans('saved')),
          actions: <Widget>[
            FlatButton(
              child: Text('OK'),
              onPressed: () => Navigator.of(context).pop(),
            )
          ],
        );
      });
} catch (e) {
  this._errorMsg = e.toString();
}

setState(() {
  _loading = false;
});
}

这里是输出:

I/flutter (14487): Machines 0 code: 4

I/flutter (14487): MachineDetails 0 code: null

I/flutter (14487): Machines 1 code: 3

I/flutter (14487): MachineDetails 1 code: null

I/flutter (14487): Machines 2 code: 22

I/flutter (14487): MachineDetails 2 code: null

I/flutter (14487): Machines 3 code: 9

I/flutter (14487): MachineDetails 3 code: null

I/flutter (14487): Machines 4 code: 25

I/flutter (14487): MachineDetails 4 code: null

I/flutter (14487): Machines 5 code: 26

I/flutter (14487): MachineDetails 5 code: null

但是我的列表machineDetails列表的确更新为_ machines列表的长度:

I/flutter (14487): MachineDetails Lenght RegisterTime: 6

感谢您的时间和精力

android list flutter
1个回答
0
投票
machineDetails[i].code = _machines[i].vCodigo;
© www.soinside.com 2019 - 2024. All rights reserved.