У меня есть список фиксированной длины, который используется в функции "build". Я хочу заменить один элемент в этом списке другим. Оба элемента в списке являются контейнерами. Я заменяю элемент в списке и делаю setState (). Функция build использует List в теле Scaffold. Я не получаю ошибки, однако, когда восстановление выполнено, ничего не изменилось.
Насколько мне известно, это не нарушает никаких правил и, насколько я знаю, не должно вызывать проблем.
Пока я Я мог бы решить эту проблему, я думаю, что с чем-то таким фундаментальным, мне нужно найти причину для этого.
Любые идеи относительно того, почему это происходит?
Код добавлен ниже:
Ниже приведен код, который НЕ работает
if (_lwDisplay[iNdxDisplay] == null) /*INITIAL DISPLAY */ {
_lwDisplay[iNdxDisplay] = wContainer;
} else {
setState(() {
_tfDataHasChanged = true;
_lwDisplay[iNdxDisplay] = wContainer;
});
}
Ниже приведен код, который НЕ работает
if (_lwDisplay[iNdxDisplay] == null) /*INITIAL DISPLAY */ {
_lwDisplay[iNdxDisplay] = wContainer;
} else {
_tfDataHasChanged = _fnHasDataChanged() /* FOR FAB */;
List<Widget> lwDisplay2 = List(_lwDisplay.length);
for (int iNdx = 0; iNdx < lwDisplay2.length; iNdx++) {
if (iNdx != iNdxDisplay) {
lwDisplay2[iNdx] = _lwDisplay[iNdx];
}
}
lwDisplay2[iNdxDisplay] = wContainer;
_lwDisplay = lwDisplay2;
setState(() {});
}