ListView.builder没有显示正确的列表

时间:2018-05-19 08:34:18

标签: dart flutter

我创建了一个小应用程序来添加列表中的项目,但是当我从列表中删除某些内容时,它会被成功删除但ListView.builder没有显示正确的值。我知道它与课堂上的钥匙相关的东西,但我很新闻,所以不知道怎么做。

要点:https://gist.github.com/OculusMode/213052325ec725aad3ab92c73599b187

提前致谢。

1 个答案:

答案 0 :(得分:1)

将其添加到Widget的构造函数中:

:super(key:new ObjectKey(_data))

示例:

class TodoTile extends StatefulWidget {
  String _data;
  int _index;
  ValueChanged<int> onDelete;
  TodoTile(this._data,this._index,{ @required this.onDelete , Key key}):super(key:new ObjectKey(_data));
  TodoTileState createState() {return new TodoTileState(_data, _index,this.onDelete);}

}

不确定这是否会导致问题,但我也将widget.onDelete更改为onDelete(也将函数指针传递给状态)

来源: https://flutter.io/widgets-intro/#keys